2020牛客暑期多校訓練營(第六場)

2021-10-08 23:53:59 字數 2265 閱讀 4976

總結:

這一次還行,做題前面比較順利得出了兩題,但是後面不是很順利,團隊配合一般需要改進。cg

k給你n和k,要求構造乙個1-n的數列滿足,對任意長度,都存在乙個連續區間滿足區間和sum%n ==k。若存在則輸出這個數列,否則輸出-1。

模擬。首先想到的就是先求1-n的和判斷是否是k 的整數倍,如果不是則直接輸出-1,然後再考慮成立的情況,總共分為兩種情況成立:

1.k=0。若k0,則我們可以讓n放在開頭第一位,之後我們兩位兩位放,i和n-i,這樣保證任意乙個長度都能滿足題意。

2.kn/2,那我們把n和k放在開頭,之後和上面一樣放i和n-i。

#include.h>

using namespace std;

int main()

}else

if(k==n/2)

puts

("-1");

return0;

}

選出乙個子矩陣,使得所求的壓強最大,壓強是指這個子矩陣中每個元素之和 / 這個子矩陣最下面一行的元素之和

只需要維護每一列元素的字首和,並且在計算的過程中除以當前這個數,這樣就ok,記得要維護當前的最大壓強值

#include .h>

using namespace std;

typedef long long ll;

ll read()

#define read read()

double a[

208]

[208];

double sum[

208]

;int main()

double ans =0;

for(int i =

1; i <= m; i++)}

printf

("%.8f\n"

, ans);}

return0;

}/**

13 3

1 3 5

6 8 9

2 7 4

**/

給你乙個n*n的網格,總共k種顏色,給網格的邊緣染色;

條件:1.所有顏色出現相同的次數;

2.不存在單色環;

3.每條水平線或垂直線都應該至少包含兩種顏色。

輸出每條水平線的顏色和垂直線的顏色,沒有則輸出-1;

#include .h>

int main()

for(int i=

1;i<=

2*n+

2;i++)}

}

乙個序列被稱為k-bag,當且僅當其以1-k的數排列組成。例如1,2,3,2,1,3,3,2,1是有效的3-bag序列。部分k-bag序列是指k-bag的連續子串行。

多組資料。給出n,k,給出長度為n的序列,判斷該序列是否為部分k-bag序列。

給出序列可能存在序列開頭、結尾處殘缺的區間。因此需要尋找開始迴圈的起點,起點在前k個數字中,即起點下標範圍為0-(k-1)。p[0]為第乙個完整部分k-bag序列的連續子串行的起始下標。len=min(p [0],k-1)。在0-len範圍內找起點。

列舉判定起點,有兩種情況。如果後面有長度》=k的序列,則每次往後跳k個,即p[j]>=k時。如果後邊長度<=k,p[j]+j==n,直接到序列末尾。

#include.h>

using namespace std;

#define io ios:

:sync_with_stdio

(false

),cin.

tie(0)

;#define ll long long

#define inf 0x3f3f3f3f

const int n

=5e5+5

;//setb;

//set::iterator it;

int a[n]

,p[n];

setmp;

int main()

while

(xmp.

erase

(a[x]);

p[x]

=y-x;

x++;}

flag=0;

len=

min(p[0]

,k-1);

for(i=

0;i<=len&&flag==

0;i++)}

if(flag==1)

else

}return0;

}

2020牛客暑期多校訓練營 第六場

雖然題目沒有看懂,但是本場mvp浩大師發現了規律,f x 2x 12x f x 1 f x 1 over 2 x f x 1 f x 2 x2x 1 f x 1 然後把程式打出來就ac了。include using namespace std typedef long long ll const i...

2020牛客暑期多校訓練營(第六場)

2020牛客暑期多校訓練營 第六場 額,睡了一下午,直接錯過了比賽。b binary vector c combination of physics and maths d data structure e easy construction f fibonacci partition g grid...

2020牛客暑期多校訓練營(第六場)

可以先把輸入離散化 用map會t 然後對於每個位置l求出最右側的r,使得 l,r 內元素不重複且區間長度最長。由於給定的序列一定是這樣的結構 部分k的排列 k的排列 k的排列 k的排列 部分k的排列 所以我們可以列舉第乙個k的排列的起點 再該起點之前的部分預設是合法的 然後從當前點往後一直跳,跳的同...