码迷,mamicode.com
首页 > 其他好文 > 详细

【POJ】【2348】Euclid‘s Game

时间:2015-02-23 13:05:45      阅读:141      评论:0      收藏:0      [点我收藏+]

标签:

博弈论

  题解:http://blog.sina.com.cn/s/blog_7cb4384d0100qs7f.html

  感觉本题关键是要想到【当a-b>b时先手必胜】,后面的就只跟奇偶性有关了

技术分享
 1 //POJ 2348
 2 #include<cstdio>
 3 #include<algorithm>
 4 bool game(int a,int b){
 5     if (a%b==0) return 1;
 6     else if (a-b<b) return !game(b,a-b);
 7     return 1;//若a-b>b 则先手必胜
 8 }
 9 int main(){
10     int a,b;
11     while(scanf("%d%d",&a,&b)!=EOF){
12         if (!a && !b) break;
13         if (a<b) std::swap(a,b);
14         printf(game(a,b) ? "Stan wins\n" : "Ollie wins\n");
15     }
16     return 0;
17 }
View Code

 

【POJ】【2348】Euclid‘s Game

标签:

原文地址:http://www.cnblogs.com/Tunix/p/4297964.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!