kiki和bob玩取石子

题目描述

kiki和bob在玩一个游戏,他们收集了一些石子,约定两人轮流从这些石子中取出一部分,但是每次只能取1、2或3颗石子,kiki和bob都非常聪明,他们总是按照最有利于自己的方式进行游戏,请你预测最后谁会赢得游戏,如果先手胜利输出kiki,否则输出bob。

输入

输入一个整数n(1≤n≤109)代表一共有多少颗石子。

输出

如果先手胜利输出kiki,否则输出bob。

样例输入 Copy

10

样例输出 Copy

kiki

源代码

#include <iostream>
using namespace std;
int main()
{
	long long num;
	cin>>num;
	if(num%4==0)cout<<"bob"<<endl;
	else cout<<"kiki"<<endl;
	return 0;
}

 思路

因为kiki先手,所以无论当最后剩余的石子数量为4时,后手赢,

因此二人总想将石子的剩余数目改变为4,谁先将石子数目改变为4谁就赢

因为无论下一个人取多少个石子他都会赢

所以当kiki先手时,若是kiki取完剩余4个则bob赢,反之kiki赢

猜你喜欢

转载自blog.csdn.net/couchpotatoshy/article/details/123991862