n个人有c个魔法帽几天去掉所有的帽子

来源:互联网 发布:知乎 守夜人原画 编辑:程序博客网 时间:2024/06/02 16:03

题目是这样的:

n个人,其中c个人戴着魔法帽,戴帽子的人只能看见别人是否戴着,但是不知道自己是不是戴着。如果想要去掉,只能在知道自己有帽子的当天晚上浸在水里面去掉里面。他们之间不能互相讨论。不能以任何方式告诉别人他是否戴着帽子,只能之间看。然后问需要几天才能将所有的帽子去掉呢?


思路:

需要C天,

c=1时,他看到没人戴着帽子,多以第一天他就知道是他戴着
c=2时,戴着帽子的人看到有一个人戴着帽子,但是他不确定自己是否戴着,但是,他想,如果只有那一个人戴着,那么第二天那个人就如c=1的情况去掉了帽子,所以他等一天,另外一个人也等一天,最后他们都在第二天晚上去掉了帽子
c=3时,和2一样,大家都等了2天
。。。
c=k时,等k-1天,然后大家都在第k天晚上dunk去掉帽子

归纳法即可。
原创粉丝点击