担当:zeke
第17回:ゲーム理論、期待値など
京都大学工学部工業化学科B1
AtCoder:緑
競プロではC++を使っています
みんげーとかWebserviceとか
最近、自転車を買いました
今年からの初心者なのでお手柔らかにお願いします
解き方のアプローチがいっぱい!!!
Grundy数が0の状態を保持したとき必敗である
| 残された石 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
|---|---|---|---|---|---|---|---|---|---|
| Grundy数 | 0 | 1 | 2 | 3 | 0 | 1 | 2 | 3 | 0 |
N山の石を取るゲームををAlice,Bobが行う。このゲームではすべての石の中で最後の石を取った人が勝ちです。(石を取れなくなった人の負け)
各山にはpile[i]個の石が積まれている。プレイヤーは各自分のターンにK個までの山を選択し、各山について石を1つ以上なら何個でも取ることができる。
2人が最適な石の取りかたをする時、Aliceが先攻ならば勝つことができるか?
制約: 1≤N≤ , 1≤pile[i]≤
N 個の正整数 a1,a2,…,aNが与えられます。
K 個の石が山になっていて、先手と後手が交互に
山から a1,a2,…,aN のいずれかの個数の石をとる
を繰り返します。ただし、山に残っている石の個数より多くの個数の石をとることはできません。先に山から石がとれなくなった方の負け (最後の石をとった方が勝ち) です。先手と後手がお互いに最善を尽くしたとき、勝つのはどちらでしょう?
Text
偶奇を使う問題はABCのC,Dでときどき見かけた
気づいたらO(1)で解けることが多い
先ほど説明した方法から考察することもできる
コンテスト