Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4506
  • 博文数量: 5
  • 博客积分: 326
  • 博客等级: 一等列兵
  • 技术积分: 60
  • 用 户 组: 普通用户
  • 注册时间: 2009-06-12 22:57
文章分类
文章存档

2009年(5)

我的朋友
最近访客

分类:

2009-11-18 18:04:46

两人谁输谁赢取决于游戏过程中的某一状态,如24 7
当减到 4 7时胜负已经可以判断。
4 7
4 3
1 3
1 0
7/4<2,如果Stan 知道若该状态由他先到达,则他胜利,那么他肯定会使自己首先到达此状态。
24是7的3倍多,stan只要先减去2*7,下一次olie只能减7。如此stan便可胜利。换句话说,就是只要
b/a>1 Stan即可操纵局面。所以若b/a>1 stan必胜。
若刚开始便是 4 7这种情况,可以用递归计算。

d


类别:默认分类 查看评论

int stanwin(int a,int b)
{
if(a>b)return stanwin(b,a);
if(b%a==0)return 1;
if(b-a<a)return 1-stanwin(b-a,a);//递归计算

return 1;//b/a>1

}


阅读(368) | 评论(0) | 转发(0) |
0

上一篇:无标题

下一篇:如何计算a^b各位数的和

给主人留下些什么吧!~~