zoukankan      html  css  js  c++  java
  • 8-取石子1(围圈)

    链接:https://www.nowcoder.net/acm/contest/75/D
    来源:牛客网

    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 32768K,其他语言65536K
    64bit IO Format: %lld

    题目描述

    小牛和小客玩石子游戏,他们用n个石子围成一圈,小牛和小客分别从其中取石子,谁先取完谁胜,每次可以从一圈中取一个或者相邻两个,每次都是小牛先取,请输出胜利者的名字(小牛获胜输出XiaoNiu,小客获胜输出XiaoKe)(1 2 3 4 取走 2 13 不算相邻)


    输入描述:

    输入包括多组测试数据
    每组测试数据一个n(1≤n≤1e9)

    输出描述:

    每组用一行输出胜利者的名字(小牛获胜输出XiaoNiu,小客获胜输出XiaoKe)
    示例1

    输入

    2
    3

    输出

    XiaoNiu
    XiaoKe

    思路:可以知道先手第一次取要么取1个要么取2个,如果只有1或2个,则他赢了;否则他必将一个圈分为了一条连续的线,对于一条连续的线,后手只要让剩余的线的条数为偶数,他就可以赢得局面,对于一条线他是完全可以做到的,
    只要一直去中间即可,所以如果n是大于2的则后手必胜。
    #include <iostream>
    using namespace std;
    
    int main(){
    	
    	int n;
    	while(cin >> n){
    		if(n == 1 || n == 2){  //或者 n < 3 
    			cout << "xiaoniu" << endl;
    			
    		}
    		else{
    			cout << "xiaoke" << endl;
    		}
    	}
    	
    	return 0;
    } 
    

      

  • 相关阅读:
    c#缓存技术(Dictionary)
    反射Reflection创建
    SQL Server手注之延时型盲注
    MySQL——事务
    MySQL——NULL值处理
    MySQL——连接的使用
    SQL server手注之报错注入
    SQL Serves手注之联合查询注入
    MySQL手注之ROOT权限处理
    MySQL——正则表达式
  • 原文地址:https://www.cnblogs.com/zhumengdexiaobai/p/8414664.html
Copyright © 2011-2022 走看看