zoukankan      html  css  js  c++  java
  • [原创]100个玻璃球问题

    题目:
    A,B从一堆玻璃球(共100个)里向外拿球,规则如下:
    (1)A先拿,然后一人一次交替着拿。
    (2)每次只拿1个2个或4个。
    (3)谁拿最后一个球,谁就是最后的失败者。

    解答:
    如果A要想赢,那么最后一轮可以拿的个数要一定要为2,3,5中的一个,A先选,B在最后一轮只能拿1个;

    如果这样的话倒数第二轮到B拿的时候如果是4个的话,那么B就一定会输(4=1+2+1,4=2+1+1,4=4)。

    要让B拿的时候只有4个的话,倒数第二轮到A拿时所剩玻璃球的个数要为5,6,8中的一种,这样才能保证B不论拿几个一定会输。

    同理,倒数第三轮到B拿的时候如果是7个的话,B不论怎么拿就一定会输。也是同样的理由,倒数第三轮A拿的话如果是8,9,11中的一种,那么B一定会输。

    于是有当轮到B所剩玻璃球的个数为:1,4,7,10...时B一定会输。
    100=4+3*32, 97=4+3*31
    而A先拿,不论A怎么拿都不能拿剩97个,那么B一定不会输,A一定会输。

    如原创文章,转载请注明:转自http://www.cnblogs.com/xpowerlord/
  • 相关阅读:
    hashlib模块
    sys模块
    random模块
    time模块
    生成器、迭代器
    装饰器
    函数相关内容
    集合相关操作
    springcloud(四):Eureka的配置详解
    springcloud(二):Eureka服务注册与发现
  • 原文地址:https://www.cnblogs.com/xpowerlord/p/3647577.html
Copyright © 2011-2022 走看看