• 取石子 找规律


    1 取石子
    1.1 Background
    CZR是个智障小朋友,朌近他家装修,多出来很多石子,所以他决定
    用这个来做一个游戏.
    因为这是个双人游戏,所以他又找来了LSQ.
    1.2 Description
    游戏规则很简单:
    1. 地上有很多石子,丌共n个,两个人轮流从地上拿走买部分石子;
    2. 每个人每仏次必须要拿走石子,但是拿走的石子个数必须大于等
    于1,小于等于k;
    3. 游戏朏式始CZR先拿,拿到地上朊后一个石子的人获胜.
    然而CZR的数学不太好,所以他想知道对于这个游戏他一定能获胜
    吗?
    1.3 Task
    1.3.1 Input
    输入有5行,表示CZR进行了5次游戏.
    输入的每仏行都有两个数n, k,表示为次游戏的n和k.
    1.3.2 Output
    输出有5行,其中每仏行的游戏中如果CZR乒定能获胜,则输出’Yes’;
    否则输出’No’.
    21.4 Sample
    1.4.1 Input
    1 1
    2 1
    5 2
    6 2
    10 3
    1.4.2 Output
    Yes
    No
    Yes
    No
    Yes
    1.5 Explanation
    NaN.
    1.6 Constraint
    对50%的数据,n, k ≤ 10.
    对100%的数据,n, k ≤ 10
    9
    .
     
    这一道题就非常的坑了
    一开始以为这是一道比较难的题 就钻研了半天
    结果 。。。这是一道找规律题
     
    规律就是 如果n%(k+1)==0就是NO  否则就是YES
    这可真是让人摸不着头脑
     
    解释是这个样子的
     
    如果你是先手
    倒数第二次你拿的时候 只要剩下k+1个石子 你就一定会赢
    对手无论拿1-k个 都是你拿走最后一个
     
    然后整个n可以表示为
    t(k+1)....
    然后A和B是交替先手的
    如果%了之后是0 就是B赢了 否则A一定能赢
    以后还是自己带好演算纸 列几个数找找规律吧 列一个表
     
    n    1 2 3 4 5 6 7
    k=1  Y N Y N Y N Y
    k=2  Y Y N Y Y N Y
    k=3  Y Y Y N Y Y Y
    ....
  • 相关阅读:
    Java中IO软件包的详细介绍
    Java中IO软件包的详细介绍
    Java中输入时IO包与Scanner的区别
    Java中输入时IO包与Scanner的区别
    Java中输入时IO包与Scanner的区别
    Java中输入时IO包与Scanner的区别
    Java中输入时IO包与Scanner的区别
    虚拟桌面技术的初步探讨
    C语言程序的内存布局
    用汇编语言给XP记事本添加“自动保存”功能 good
  • 原文地址:https://www.cnblogs.com/Tidoblogs/p/11621942.html
Copyright © 2020-2023  润新知