ZCMU-1122 取石子博弈II(巴式博弈)

题目

1122: 取石子游戏II

Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 367 Solved: 203
[Submit][Status][Web Board]
Description

一堆石子有n个,两人轮流取.每次取最少取1个,最多取m个。取完者胜.先取者负输出"Second win".先取者胜输出"First win"

Input

多组测试数据。

每组测试数据包含2个正整数n,m。(n,m<=10000000)

Output

对于每组测试数据,输出谁获胜.

Sample Input

2 1
3 2
3 1

Sample Output

Second win
Second win
First win

AC代码

一个公式就完事了
只需判断n % (m+1).若等于零,后者胜利,其余先手胜利。

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
    
    
    int n,m;
    while(scanf("%d%d",&n,&m)!=EOF)
    {
    
    
        if(n % (m + 1) == 0)
            printf("Second win\n");
        else
            printf("First win\n");
    }
    return 0;
}


猜你喜欢

转载自blog.csdn.net/DAVID3A/article/details/115188150