NOI:6626 取石子游戏
程序员文章站
2024-03-15 08:34:35
...
题目链接:
题意:这道题是一道数学题,主要根据提示判断石子堆倍数大于2倍时判断输赢,否则只取一倍石子
#include <stdio.h>
#include <iostream>
using namespace std;
int main(){
int n,m;
cin>>n>>m;
while(n!=0&&m!=0){//输入
int size=0;
while(n!=0&&m!=0){//假如一方为0
if(n<m){
int tmp=n;
n=m;
m=tmp;
}
size++;
if(size%2==0){//对于先手后手来说,只要两个石子倍数大于等于2,都结束游戏
if(n/m>=2){
cout<<"lose"<<endl;
break;
}
}else{
if(n/m>=2){
cout<<"win"<<endl;
break;
}
}
n=n-m;
}
if(size%2==0&&n==0){//判断当一堆为0时,谁赢
cout<<"lose"<<endl;
}else if(size%2==1&&n==0){
cout<<"win"<<endl;
}
cin>>n>>m;
}
}
上一篇: 组合总数II
下一篇: 二维数组的多种遍历方式