題解 QLU第二次測試賽 求和

2021-08-30 19:23:48 字數 1173 閱讀 1114

要滿足體面所說三元組,需x < y < z && y-x == z-y && color_x == color_z

首先我們考慮暴力的解法:

for

(int y=

1;y<=n;y++)}

}

1.y-x = z-y  -->  2*y = x+z  -->即(x+z)肯定為偶數,即x與z需同奇或同偶

2.y = (z+x)/2 -->即便x與z再大只要x,z<= n, y#include

#include

using

namespace std;

long

long a[2]

[100001];

long

long b[2]

[100001];

long

long c[2]

[100001];

long

long d[2]

[100001];

long

long g[

100001];

long

long n,m;

const

int p =

10007

;int

main()

long

long sum=0;

for(

int i=

1;i<=m;i++

)//最後過一遍顏色,計算每個顏色的加和就ok

cout

}/*這裡給出注釋:

g[x]表示題目給出的每個塊上面的數字

a[0][x]表示顏色為 x 的塊且位置為偶數的位置累加和

a[1][x]表示顏色為 x 的塊且位置為奇數的位置累加和

b[0][x]表示顏色為 x 的塊且塊在偶數字置,塊上的數字的累加和

b[1][x]表示顏色為 x 的塊且塊在奇數字置,塊上的陣列的累加和

c[0][x]表示顏色為 x 的塊,偶數字置的塊有多少個

c[1][x]表示顏色為 x 的塊,奇數字置的塊有多少個

d[0][x]表示顏色為 x 的塊,偶數字置i*g[i](自己乘自己)的累加和

d[0][x]表示顏色為 x 的塊,奇數字置i*g[i](自己乘自己)的累加和

*/

第二次周賽題解

e題,不懂的看新生訓練題解 includeint main return 0 d題,乙個預處理就ok includeint a 1000005 int main int t scanf d t while t return 0 c題,打表找下規律,會發現是以1 1 2 0 2 2 1 0為迴圈 in...

第二次周賽題解

位址 a 組成三位數 列舉第乙個數,第二個數第三個數根據關係算出來,然後判斷是否合法就行了。include define rep i,a,b for int i a i b i using namespace std int vis 10 bool fun int n return true boo...

第二次周賽HDU 1019題解

第一行輸入乙個整型數n,表示有n組資料,每組資料一行,每組資料報含m 1個整型數,第乙個數字m表示後面有m個數字,計算出這m個數字的最小公倍數。歐幾里得演算法,首先算出最小公約數,然後用最小公約數可以算出最小公倍數。例如 a,b的最大公約數是c,那麼a,b的最小公倍數為a b c。ac通過的c 語言...