题目链接

题目

题目描述

小石和小阳玩游戏,一共有 \(n\) 个数,分别为 \(1 \sim n\) 。两人轮流取数,小石先手。对于每轮取数,都必须选择剩下数中的任意一个数 \(x\) ,同时还要取走 \(x,\left \lfloor \frac{x}{2} \right \rfloor,\left \lfloor \frac{\left \lfloor \frac{x}{2} \right \rfloor}{2}\right \rfloor \ldots\) 如果某个数不存在,就停止取数(不能一个数都不取)。谁取走最后一个数,谁就输了。小石想知道自己能否获胜。 如果小石能赢,输出 “Shi”,否则输出 "Yang”(均不输出引号)。

输入描述

共一行,输入一个数 \(n\) 。

输出描述

共一行,输出 "Shi" 或 "Yang"(不输出引号)。

示例1

输入

1

输出

Yang

说明

小石只能取走 \(1\) ,小阳赢。

示例2

输入

2

输出

Shi

说明

若小石取走 \(1\) ,则小阳只能取走 \(2\) ,小石赢。

备注

\(1 \leq n \leq 10^9\)

题解

知识点:博弈论。

这种是在偏序集上的Chomp游戏,即当前决策可以覆盖对手的决策,那么证明就十分清晰:

  1. \(n = 1\) 时,先手必输。
  2. \(n>1\) 时,假设先手先取 \(1\) ,若此时后手有必胜策略,一定会经过 \(1\) 这个数字,那么先手可以直接采用后手策略取得胜利,因此后手不可能有必胜策略,因此先手必胜。

时间复杂度 \(O(1)\)

空间复杂度 \(O(1)\)

代码

#include <bits/stdc++.h>
using namespace std;
using ll = long long; int main() {
std::ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
int n;
cin >> n;
cout << (n == 1 ? "Yang" : "Shi") << '\n';
return 0;
}

NC26212 小石的签到题的更多相关文章

  1. A 小石的签到题

    题目链接:https://ac.nowcoder.com/acm/contest/949/A 思路: 这题明确的说了是个签到题,但是一直怀疑不是签到题,是唬我的,结果仔细想了想真是这么回事. 每个人必 ...

  2. 牛客小白月赛16 A 小石的签到题 ( 博弈)

    链接:https://ac.nowcoder.com/acm/contest/949/A来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...

  3. A 洛谷 P3601 签到题 [欧拉函数 质因子分解]

    题目背景 这是一道签到题! 建议做题之前仔细阅读数据范围! 题目描述 我们定义一个函数:qiandao(x)为小于等于x的数中与x不互质的数的个数. 这题作为签到题,给出l和r,要求求. 输入输出格式 ...

  4. fjwc2019 D3T1 签到题 (贪心)

    #184. 「2019冬令营提高组」签到题 每次询问接近O(1).......考虑贪心 怎么贪心呢? 对于相邻的两个数,我们要保证异或x后单调不降 我们找到两个数二进制上最高的相异位 当左边的数相异位 ...

  5. CTF-练习平台-WEB之 签到题

    一.签到题 根据提示直接加群在群公告里就能找到~

  6. 洛谷P3601签到题(欧拉函数)

    题目背景 这是一道签到题! 建议做题之前仔细阅读数据范围! 题目描述 我们定义一个函数:qiandao(x)为小于等于x的数中与x不互质的数的个数. 这题作为签到题,给出l和r,要求求. 输入输出格式 ...

  7. 【洛谷九月月赛T1】签到题(bsgs)(快速乘)

    说好的签到题呢qwq....怎么我签到题都不会啊qwq 之后看了bsgs才发现貌似不是那么那么难fake!!什么东西... 先贴上部分分做法(也就是枚举1的个数,然后每一步都进行取模(这和最后取模结果 ...

  8. WEB新手之签到题

    写一写web新手赛的题. 这是签到题,开始时需要耐心等待页面中字母全部出现. 字母全部出现后,会跳转到另一个界面,如上图所示.F12没什么特别的地方,这题应该有点难度. 按往常一样,先抓包. 按英文提 ...

  9. EOJ Monthly 2019.1 唐纳德先生与这真的是签到题吗 【数学+暴力+multiset】

    传送门:https://acm.ecnu.edu.cn/contest/126/ C. 唐纳德先生与这真的是签到题吗 单测试点时限: 6.0 秒 内存限制: 1024 MB 唐纳德先生在出月赛的过程中 ...

  10. HLJU 1221: 高考签到题 (三分求极值)

    1221: 高考签到题 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 9  Solved: 4 [Submit][id=1221">St ...

随机推荐

  1. 07-verilog & sytem verilog

    一.数据类型 二值逻辑变量 bit 不赋值的时候,变量初始默认为0 x或z的值会转变为0 bit vector--bit矢量 bit [msb,lsb] variable_name = [initia ...

  2. css - 编写 兼容到ie7的导航

    1, index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  3. Spring Boot对接Oracle数据库

    Spring Boot对接Oracle数据库 最近学习了Oracle数据库,那么如何使用Spring Boot和MyBatis Plus对接Oracle数据库呢? 这就有了这篇随记,具体流程如下 1. ...

  4. [转帖]HikariCP常用监控指标与故障排查实战

    编者有言:本书由资深数据库连接池专家撰写,褚霸.德哥.张亮.吴晟等近10位专家高度评价,从设计思想.功能使用.原理实现.工程实践.技术扩展5个维度对HikariCP进行全面讲解和深入分析. 本文将带你 ...

  5. [转帖]global cache cr request等待事件分析及优化

    在RAC环境中,和全局调整缓存相关的最常见的等待事件无非就是:global cache cr request,global cache busy和equeue 在XX电信做了一次数据库巡检中发现,sp ...

  6. [转帖] 容器内的Linux诊断工具0x.tools

    https://www.cnblogs.com/codelogs/p/16242999.html 原创:扣钉日记(微信公众号ID:codelogs),欢迎分享,转载请保留出处. 简介# Linux上有 ...

  7. [转帖]VMware-ovftool命令行部署与导出镜像

    ESXI6.0之后管理为WEB,OVF导出/部署是个渣渣,如果虚拟机文件过大,一般会报网络异常中断而失败,可使用官方ovftool工具解决,快而方便,支持linux和Mac OSX,可脚本操作,批量处 ...

  8. [转帖]Linux 监测服务心跳、服务重启策略

    文章目录 前言 背景 一.curl服务可用验证 二.服务探测脚本 三.配置系统定时任务 四.Linux特殊字符转义 总结 前言 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i. 提示:以下是 ...

  9. [转帖]内存随机访问也比顺序慢,带你深入理解内存IO过程

    https://zhuanlan.zhihu.com/p/86513504 平时大家都知道内存访问很快,今天来让我们来思考两个问题: 问题1: 内存访问一次延时到底是多少?你是否会进行大概的估算? 例 ...

  10. OpenEuler切换内核的方法-bcc学习后续

    OpenEuler切换内核的方法 摘要 昨天使用OpenEuler 22.03 LTS学习bcc但是一直不行. 没办法切换到CentOS8 还有 Anolis 8 很容易就可以直接还是用了 yum i ...