Problem
現在有 N 個積木,兩個人輪流拿 X 個積木 (X in Set, X <= 20),直到最後一個人拿走最後一塊積木獲勝,如果無法拿取則對方獲勝。
給定一個勝負的前 M 個積木的博弈結果,求 |Set| 最小為何,相同時則輸出字典順序最小的。
Sample Input
|
|
Sample Output
|
|
Solution
這一題很賊的地方在於 X <= 20,那麼已經可以發現可以窮舉集合情況,從最小的的集合順序開始窮舉。
窮舉的方式採用 stl 中的 next_permutation。
|
|