博弈論初探——取石子游戲(一)

描述

一天,TT在寢室閒着無聊,和同寢的人玩起了取石子游戲,而由於條件有限,他/她們是用旺仔小饅頭當作石子。遊戲的規則是這樣的。設有一堆石子,數量爲N(1<=N<=1000000),兩個人輪番取出其中的若干個,每次最多取M個(1<=M<=1000000),最先把石子取完者勝利。我們知道,TT和他/她的室友都十分的聰明,那麼如果是TT先取,他/她會取得遊戲的勝利麼?

輸入

第一行是一個正整數n表示有n組測試數據

輸入有不到1000組數據,每組數據一行,有兩個數N和M,之間用空格分隔。

輸出

對於每組數據,輸出一行。如果先取的TT可以贏得遊戲,則輸出“Win”,否則輸出“Lose”(引號不用輸出)

樣例輸入

2
1000 1
1 100

樣例輸出

Lose
Win

代碼實現: 

#include <stdio.h>

int main()
{
    int n,i,sum,stone;
    scanf("%d",&n);
    int a[n];
    
    for (i=0; i<n; i++) {
        scanf("%d%d",&sum,&stone);
        
        if (sum%(stone+1)) {
            a[i]=1;
        } else {
            a[i]=0;
        }
    }
    for (i=0; i<n; i++) {
        
        if (a[i]) {
            printf("Win\n");
        } else {
            printf("Lose\n");
        }
    }
    
    return 0;
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章