時間限制:
3000 ms | 記憶體限制:
65535 kb
難度:5 描述
小王喜歡與同事玩一些小遊戲,今天他們選擇了玩取石子。
遊戲規則如下:共有n堆石子,已知每堆中石子的數量,並且規定好每堆石子最多可以取的石子數(最少取1顆)。
兩個人輪流取子,每次只能選擇n堆石子中的一堆,取一定數量的石子(最少取乙個),並且取的石子數量不能多於該堆石子規定好的最多取子數,等哪個人無法取子時就表示此人輸掉了遊戲。
假設每次都是小王先取石子,並且遊戲雙方都絕對聰明,現在給你石子的堆數、每堆石子的數量和每堆石子規定的單次取子上限,請判斷出小王能否獲勝。
輸入
第一行是乙個整數t表示測試資料的組數(t<100)
每組測試資料的第一行是乙個整數n(1輸出
對於每組測試資料,輸出win表示小王可以獲勝,輸出lose表示小王必然會敗。
樣例輸入
211000 1
21 1
1 1
樣例輸出
loselose
提示注意下面一組測試資料
2
1 1
2 2
正確的結果應該是win
因為小王會先從第二堆石子中取乙個石子,使狀態變為
1 1
1 2
這種狀態下,無論對方怎麼取,小王都能獲勝。
**經典題目
上傳者張云聰
解題思路:
這道題是巴什博弈和尼姆博弈的雜糅,因為尼姆博弈要求對每一堆石子可以取1-全部,而這道題限制了個數,就成為了巴什博弈。那為什麼可以用尼姆博弈的思想來求解呢?
因為我們可以發現,當我們使用巴什博弈取到最後一次時,得到的n%(m+1)結果肯定
#includeint main()
if(s==0)
printf("lose\n");
else
printf("win\n");
}}
博弈之 取石子系列(二) nyoj 135
時間限制 3000 ms 記憶體限制 65535 kb 難度 5描述 小王喜歡與同事玩一些小遊戲,今天他們選擇了玩取石子。遊戲規則如下 共有n堆石子,已知每堆中石子的數量,並且規定好每堆石子最多可以取的石子數 最少取1顆 兩個人輪流取子,每次只能選擇n堆石子中的一堆,取一定數量的石子 最少取乙個 並...
NYOJ 題目358 取石子 五)(博弈)
時間限制 1000 ms 記憶體限制 65535 kb 難度 4 描述 himdd最近很想玩遊戲,於是他找到acmj和他一起玩,遊戲是這樣的 有一堆石子,兩個人輪流從其中取走一定的石子,取走最後所有石子的人為贏家,不過得遵循如下規則 1.第一次取不能取完,至少取1顆.2.從第二次開始,每個人取的石子...
135 取石子(二)
小王喜歡與同事玩一些小遊戲,今天他們選擇了玩取石子。遊戲規則如下 共有n堆石子,已知每堆中石子的數量,並且規定好每堆石子最多可以取的石子數 最少取1顆 兩個人輪流取子,每次只能選擇n堆石子中的一堆,取一定數量的石子 最少取乙個 並且取的石子數量不能多於該堆石子規定好的最多取子數,等哪個人無法取子時就...