牛客國慶集訓派對Day4 H 樹鏈博弈

2021-08-28 18:59:32 字數 747 閱讀 4322

point:

首先,每層的黑點數為偶數的時候,為先手必敗態。首先,沒有黑點,都是0,肯定是先手必敗態。

當每層的黑點數為偶數時,a先手,他把乙個黑點變為白色時(假設不動它的祖先們的顏色),b把同層的另乙個黑點變為白色,就回到了每層的黑點數為偶數的時候(即先手必敗態)。

如果他把一些祖先們的顏色變了,我們還是可以同層的另乙個黑點變為白色,然後把變化的祖先層(此時黑點數肯定為奇數),變化一下,把黑變白,或者白變黑,黑點數又回偶數了。

先手必勝態(每層的黑點數不都為偶數)一定能轉化為先手必敗態(每層的黑點數為偶數)。

先手必敗態只能到先手必勝態。

所以就是搜一下,看看每層的黑點數就ok了。

#include #include #include #include #include using namespace std;

#define ll long long

const int n = 1e3+33;

int cor[n];

vectorg[n];

int d[n];

void dfs(int u,int pre,int dep)

}int main()

for(int i=1;idfs(1,-1,1);

int flag=1;

for(int i=1;i<=n;i++)

if(flag)else

printf("first\n");

}

牛客國慶集訓派對Day4

a 把b n include include include includeusing namespace std int main d 由於是個完全圖,選擇乙個權值最小的點,其他所有的點向它連線就行了。注意點為1的時候輸出0 include include include includeusing...

牛客國慶集訓派對Day4 G I H

小 bo 有 n 個正整數 a1.an,以及乙個權值序列 w1 wn,現在他定義 現在他想知道 你只需要輸出答案對 109 7 取模後的值 第一行乙個正整數 n 第二行 n 個正整數 a1.an 第三行 n 個正整數 w1.wn 輸出答案對 109 7 取模後的值示例1 複製3 1 1 1 1 1 ...

2019牛客國慶集訓派對day3 H

題意 動態插入一維線段端點為 li ri l i,r i li r i 查詢給定引數 li ri l i,r i li r i 問有多少條線段可以覆蓋它。我看了一眼感覺cdq可以寫我就寫了2333,複雜度是在o n log 2n l og2n o n log 2n log 2n o n lo g2 ...