教官的游戏

【题目描述】

有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;
}
时间: 2024-10-10 20:41:04

教官的游戏的相关文章

2793 教官的游戏

2793 教官的游戏 时间限制: 1 s 空间限制: 2000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 有N个学生刚吃完饭,准备出食堂. 国防学校有个规矩:必须2人一排或3人一列离开. 两个教官A,B轮流取2或3人,谁先取完谁就赢得游戏.(A先取) 若两人都用最优策略,谁会赢? 输入描述 Input Description N 输出描述 Output Description A赢输出1: B赢输出-1: 平局输出0: 若人数为负,则教官NC

【水】wikioi2793教官的游戏

2793 教官的游戏 题目描述 Description 有N个学生刚吃完饭,准备出食堂. 国防学校有个规矩:必须2人一排或3人一列离开. 两个教官A,B轮流取2或3人,谁先取完谁就赢得游戏.(A先取) 若两人都用最优策略,谁会赢? 输入描述 Input Description N 输出描述 Output Description A赢输出1: B赢输出-1: 平局输出0: 若人数为负,则教官NC了,输出120.(该打120了) 样例输入 Sample Input 7 样例输出 Sample Out

教官的游戏(codevs 2793)

题目描述 Description 有N个学生刚吃完饭,准备出食堂. 国防学校有个规矩:必须2人一排或3人一列离开. 两个教官A,B轮流取2或3人,谁先取完谁就赢得游戏.(A先取) 若两人都用最优策略,谁会赢? 输入描述 Input Description N 输出描述 Output Description A赢输出1: B赢输出-1: 平局输出0: 若人数为负,则教官NC了,输出120.(该打120了) 样例输入 Sample Input 7 样例输出 Sample Output 1 数据范围及

20170913自制猜数字游戏

/* 猜数字:系统随机生成一个四位数,请根据下列判断猜出来 A:数值正确,位置正确 B:数值正确,位置不正确 C:数值不正确 */ #include<stdio.h> #include<time.h> #include<stdlib.h> #pragma warning (disable:4996) #define pUCharHead unsigned char * //以数组形式返回n个无重复的随机数,范围可指定[min,max] pUCharHead GenNoR

洛谷P1199 三国游戏

题目描述 小涵很喜欢电脑游戏,这些天他正在玩一个叫做<三国>的游戏. 在游戏中,小涵和计算机各执一方,组建各自的军队进行对战.游戏中共有 N 位武将(N为偶数且不小于 4),任意两个武将之间有一个"默契值",表示若此两位武将作为一对组合作战时,该组合的威力有多大.游戏开始前,所有武将都是自由的(称为自由武将,一旦某个自由武将被选中作为某方军队的一员,那么他就不再是自由武将了),换句话说,所谓的自由武将不属于任何一方. 游戏开始,小涵和计算机要从自由武将中挑选武将组成自己的军

游戏开发 系统app开发游戏定制开发找谁

梦幻珍珠港理财拆分游戏系统软件开发怎么做?找[江生:185-2911-8412 微电]. 梦幻珍珠港拆分游戏平台开发.梦幻珍珠港理财全网模式开发.梦幻珍珠港收益模式介绍开发. 梦幻珍珠港拆分游戏系统源码搭建平台!!我们是软件开发,玩家勿扰!非平台客服,玩家勿扰!] 游戏规则: 一.开发新会员要从您的库房扣除3 03颗珍珠,体系扣除5颗珍珠,新会员有298颗珍珠. 二.推荐老友,推荐人能够得到第一代会员的2%,第二代会员的1%,第三代会员的0.5%,一代的收益就是5.96颗珍珠奖赏(可转换为等量可

游戏服务器开发需要学习的技术

一,游戏服务器编程语言的选择 所谓的游戏服务器编程语言其实有很多,基本上任何一种语言都可以作为游戏服务器的编程语言.这需要根据自己游戏的类型和要求加以选择.比如C++,Java ,Erlang,go等等.目前我用过的只有C++和Java.但是以Java为主.所以接下来就以自己的经验,谈谈以Java为核心的游戏服务器开发技术体系. Java目前作为游戏服务器开发语言已经很是普遍.但是大多数是作为页游或手游的服务器,而端游戏一般选择C++,因为端游对服务器的性能要求相对比较高一些.两种语言各有利弊.

赛码网算法: 格子游戏

格子游戏 题目描述 有n个格子,从左到右放成一排,编号为1-n.共有m次操作,有3种操作类型:1.修改一个格子的权值,2.求连续一段格子权值和,3.求连续一段格子的最大值.对于每个2.3操作输出你所求出的结果. 输入输入第一行两个整数,n表示格子个数,m表示操作次数,n和m中间用空格隔开:接下来输入n行,每行一个整数表示一个格子的权值接下来输入m行,每行有三个整数,中间用空格隔开:第一个是选择的操作类型1-3,第二和第三个整数是操作格子的编号.样例输入3 37892 1 33 1 32 1 2输

【BZOJ4945】[Noi2017]游戏 2-SAT

[BZOJ4945][Noi2017]游戏 题目描述 题解:2-SAT学艺不精啊! 这题一打眼看上去是个3-SAT?哎?3-SAT不是NPC吗?哎?这题x怎么只有8个?暴力走起! 因为x要么不是A要么不是B,所以直接2^8枚举所有x就行了.然后就变成了一个2-SAT问题.假设有两场游戏1,2,分别可以使用的地图为A1,A2,B1,B2,如果有一个限制是1 A 2 A,那么选A1就必须选A2,然后我这个沙茶就开开心心的拿了55分. 为什么不对?我建出来的图显然不对偶啊!考虑逆否命题,选A1就必须选