018: 石の上にもニム¶
難易度: ☆☆
問題¶
ニムは、いくつかの山に置かれた石を2人で取り合うゲームです。 1回の手番では、1つの山を選び、その山から1個以上の石を取ります。 最後の石を取ったプレイヤーが勝ちます。
関数 winning_move(piles) を書いてください。
piles は、各山の石の数を表す非負整数のリストです。
返り値は、必勝手を表す (index, new_count) とします。
これは、index 番目の山を new_count 個に減らす、という意味です。
複数の必勝手がある場合は、もっとも小さい index の手を返してください。
必勝手がない場合は None を返してください。
制約¶
pilesは非負整数のリストです。pilesは空でもかまいません。indexは0始まりです。new_countは、選んだ山の現在の石数より小さい非負整数です。- CUIは作りません。
- 盤面を受け取り、次の1手だけを返します。