題意
D社長和H長老有一天閒着無聊,決定開始玩一個簡單遊戲。
開始有一個無向圖,沒有自環和重邊,由D社長先行,D社長先任意選擇一條邊,並把它刪除,H長老接着選擇上一條邊的相鄰邊把它刪除,然後又是D選擇上一條邊的相鄰邊把它刪除(兩條邊相鄰指他們具有公共點)。如果誰無法操作了,誰就輸了。
現在給你這個圖,在D和H都是最佳策略時,D是否能夠勝出。
分值 | 子任務依賴 | ||
---|---|---|---|
1 | 10 | ||
2 | 25 | 1 | |
3 | 65 | 2 |
題解
對於博弈問題,沒有什麼思路的時候,先從最特殊的開始考慮:首先考慮一個連通塊,沒有邊則先手必敗,只有一條邊則先手必勝。
猜想這是否只與邊數的奇偶性有關,即奇數條必勝,偶數條必敗。
考慮歸納證明,對於邊數爲大於1的奇數,設邊數小於它的情況都符合,那麼任意刪掉一條邊後剩下偶數條(如果連通塊不是樹的話任意刪掉一條非橋邊即可,否則刪掉一個度數爲1的點),本來就必敗,再加上只能刪相鄰邊就還是必敗,於是必勝;而對於偶數,任意刪掉一條後都是必勝所以必敗。故只需判斷是否有邊數爲奇數的連通塊即可。