NYOJ 題目135取石子(二)(博弈)

2021-06-23 02:43:05 字數 1041 閱讀 6529

時間限制:

3000 ms  |  記憶體限制:

65535 kb

難度:5 描述

小王喜歡與同事玩一些小遊戲,今天他們選擇了玩取石子。

遊戲規則如下:共有n堆石子,已知每堆中石子的數量,並且規定好每堆石子最多可以取的石子數(最少取1顆)。

兩個人輪流取子,每次只能選擇n堆石子中的一堆,取一定數量的石子(最少取乙個),並且取的石子數量不能多於該堆石子規定好的最多取子數,等哪個人無法取子時就表示此人輸掉了遊戲。

假設每次都是小王先取石子,並且遊戲雙方都絕對聰明,現在給你石子的堆數、每堆石子的數量和每堆石子規定的單次取子上限,請判斷出小王能否獲勝。

輸入

第一行是乙個整數t表示測試資料的組數(t<100)

每組測試資料的第一行是乙個整數n(1輸出

對於每組測試資料,輸出win表示小王可以獲勝,輸出lose表示小王必然會敗。

樣例輸入

2

11000 1

21 1

1 1

樣例輸出

lose

lose

提示注意下面一組測試資料

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堆石子中的一堆,取一定數量的石子 最少取乙個 並且取的石子數量不能多於該堆石子規定好的最多取子數,等哪個人無法取子時就...