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

教官的游戏

时间:2016-06-05 06:27:58      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:

【题目描述】

有N个学生刚吃完饭,准备出食堂,学校有个规矩:必须2人一排或3人一排离开。

两个教官A,B轮流取2或3人,谁先取完谁就赢得游戏(A先取)。

若两人都采用最优策略,询问谁会赢。

【输入描述】

一个整数N。

【输出描述】

A赢输出1;

B赢输出-1;

平局输出0;

若人数为负,输出120。

【样例输入】

7

【样例输出】

1

【数据范围及提示】

N <= 10000。

源代码:

#include<cstdio>
int n;
int main() //显而易见的简单博弈论。
{
    scanf("%d",&n);
    if (n<0)
      printf("120");
    else
    {
        int t1=n/5,t2=n%5;
        if (!t2) //若能够整除,则一定为ABAB状态。
          printf("-1");
        else
          if (t1&1) //判断是否为奇数。
          {
            if (t2<2||t2>3) //此情况为2步不为3步。
              printf("-1"); //ABAB状态。
            else
              printf("1"); //ABABA状态。
          }
          else
          {
            if (t2<2||t2>3)
              printf("1");
            else
              printf("-1");
          }
    }
    return 0;
}

 

教官的游戏

标签:

原文地址:http://www.cnblogs.com/Ackermann/p/5559991.html

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