1218 取石子遊戲

2021-08-21 01:44:24 字數 738 閱讀 9997

題目:

有兩堆石子,兩個人輪流去取。每次取的時候,只能從較多的那堆石子裡取,並且取的數目必須是較少的那堆石子數目的整數倍,最後誰能夠把一堆石子取空誰就算贏。

比如初始的時候兩堆石子的數目是25和7。

25 7

-->

11 7

-->

4 7-->

4 3-->

1 3-->

1 0選手1取

選手2取

選手1取

選手2取

選手1取

最後選手1(先取的)獲勝,在取的過程中選手2都只有唯一的一種取法。

給定初始時石子的數目,如果兩個人都採取最優策略,請問先手能否獲勝。

輸入:輸入包含多數資料。每組資料一行,包含兩個正整數a和b,表示初始時石子的數目。

輸入以兩個0表示結束。

輸出:如果先手勝,輸出"win",否則輸出"lose" 

樣例:  

輸入樣例

34 12

15 24

0 0輸出樣例:

winlose

**:

#include#define n 50

using namespace std;

int main()

while(m/n==1)

if(i%2==1) cout<<"lose"

return 0;

}

1218 取石子遊戲

1218 取石子遊戲 時間限制 1000 ms 記憶體限制 65536 kb 提交數 4462 通過數 2049 題目描述 有兩堆石子,兩個人輪流去取。每次取的時候,只能從較多的那堆石子裡取,並且取的數目必須是較少的那堆石子數目的整數倍,最後誰能夠把一堆石子取空誰就算贏。比如初始的時候兩堆石子的數目...

1218 取石子遊戲

1218 取石子遊戲 時間限制 1000 ms 記憶體限制 65536 kb 提交數 5555 通過數 2581 題目描述 有兩堆石子,兩個人輪流去取。每次取的時候,只能從較多的那堆石子裡取,並且取的數目必須是較少的那堆石子數目的整數倍,最後誰能夠把一堆石子取空誰就算贏。比如初始的時候兩堆石子的數目...

1218 取石子遊戲(swap)

題目描述 有兩堆石子,兩個人輪流去取。每次取的時候,只能從較多的那堆石子裡取,並且取的數目必須是較少的那堆石子數目的整數倍,最後誰能夠把一堆石子取空誰就算贏。比如初始的時候兩堆石子的數目是25和7。25 7 11 7 4 7 4 3 1 3 1 0 選手1取 選手2取 選手1取 選手2取 選手1取 ...