Stone(博弈)

分类: HDU GRADE:D 数学-博弈论 OL   186人阅读  评论(0)  收藏  举报

题目连接:hdu 4764 Stone


题目大意:有两个人,Tang和Jiang,玩一个游戏,给出n和m,然后从Tang开始报数,每次最多报m个数,然后一个人报完后换另一个人报,但是报的数要接着前一个(比如T报了1,2,那么J就得从3开始报)然后谁报到n就算输,输出胜利者的名字。


解题思路:判断(n-1)%(m+1)是否为0即可。因为不管第一个人报多少,第二个人始终可以将每一轮报的数控制在m+1。


[cpp]  view plain copy
  1. #include <stdio.h>  
  2.   
  3. int main () {  
  4.     int n, m;  
  5.     while (scanf("%d%d", &n, &m) == 2 && n+m) {  
  6.         printf("%s\n", (n-1)%(m+1) ? "Tang" : "Jiang");  
  7.     }  
  8.     return 0;  
  9. }  

你可能感兴趣的:(HDU,博弈,ol,GRADE:D,数学-博弈论)