端脑吧 关注:37,708贴子:687,662

【终极头脑风暴】——【神之裁员】——你能闯入第几层?

只看楼主收藏回复

某公司有1000名员工,有一天老板要裁员
老板先让所有员工随机站成一路纵队,接着拿了1001张号码牌,编号为1,2,3,4,……1000,1001。
接下来老板将号码牌全部打乱并贴在所有员工的后脑勺上,一人贴一张,最后留下的一张老板自己藏着。
这时,每一个员工都能看到队伍里排在自己前面的所有员工的号码牌,但是看不到自己的号码牌,也看不到身后员工的号码牌。
接着,由队伍末的员工开始向前,每个人依次报一个1-1001之间的数字,并且不能重复报。
等1000名员工全部都报完数字后,老板将辞退那些报出数字和贴在自己后脑勺上数字不同的的员工。
老板认为自己的计划很完美,应该能够裁掉很多人。
但是,出于某种原因,老板的计划泄露了出去——1000名员工在裁员前一天知道了消息与老板的详细裁员方法,于是聚集起来开会讨论策略:如何最大限度地减少被裁掉的人数?(这里忽略员工个人思想,并假设所有员工都有像超级计算机一样的计算能力)
第一层目标:寻找策略,保证至少100人不被裁掉。
第二层目标:寻找策略,保证至少500人不被裁掉。
第三层目标:寻找策略,保证至少990人不被裁掉。
第四层目标:寻找策略,保证至少997人不被裁掉。
第五层目标:寻找策略,保证至少999人不被裁掉,或者给出不可能证明。
来吧筒子们,测试你们牛逼程度的时刻到了~
……
话说我本人只能搞定第四层……
还有搜索答案的请不要把标准解答贴过来,这样就没意思了~
你们能搞定几层?


1楼2014-01-10 20:40回复
    另:请不要钻空子什么报小数什么报数的时候加一段摩尔电码之类的


    2楼2014-01-10 20:42
    收起回复
      牺牲掉第一个人,第一个人报两个未知数的平均数,第二个人计算是三个未知数中的哪两个数,剩下一个就是自己的,以此类推999个人保住了


      IP属地:上海3楼2014-01-10 22:17
      收起回复
        我觉得题目应该加一条,如果有人不按规律来就开除所有人,或是只开除犯错的人,这样解题思路就有了。


        IP属地:福建来自iPhone客户端5楼2014-01-11 14:38
        收起回复
          今天突然想出了100%几率保全999个人的办法~这里卖个关子~寒假结束前没人答出来我再来贴答案


          6楼2014-01-11 18:07
          收起回复
            如果每个人都只能报1-1001之间的数字的话,不能保证999存活


            IP属地:广东8楼2014-01-15 18:52
            收起回复
              解释起来有点复杂,好像999人无解。
              =======================
              首先,倒数第一人必须自杀才能拯救大家。况且他也不能保证自己一定猜对。
              ========================
              从两员工开始,牺牲1人,保全剩下1人没问题
              =========================
              假设老板,倒数第一个员工,倒数第二个员工的名字分别是Boss, Emp1 , Emp2, 号码分别是 a, b, c
              Emp1 可以看到c,只能猜是a,b的一个
              Emp2 可以猜自己是a,b, c三个中的一个。
              做法是:
              如果 c 小于a或者b中任何一个(或者两个)
              那么Emp1报 a,b中刚刚大于c的那个 ,
              例如; Boss, Emp1, Emp2分别是1,3,2 。 那么Emp1报告 3 。 Emp2可以发现1,2,3中比3小的就是2.
              Boss, Emp1, Emp2分别是3,2,1 。 那么Emp1报告 2 。 Emp2可以发现1,2,3中比2小的就是1.
              如果 c 大于a 也大于b
              那么Emp1报 a b中小的那个 ,
              Boss, Emp1, Emp2分别是1,2,3 。 那么Emp1报告 1 。 Emp2可以发现1,2,3中比1小的没有了,于是知道自己应该是最大的那个3.
              =======================
              本来想和三楼一样以此类推,结果发现不行,加到三员工的时候出问题了,
              举个例子: 1 3 2 4 排列和4 3 2 1 排列 。emp1都是报告3, emp2 都是可以猜到2. 但是emp3 面临1,4 的猜测
              ======================
              分析:
              因为每个人都看不到自己的号码,本身就比之前报的人多了一个未知数,由于前一个人报告号码,清掉了一个未知数,所以每个员工面临的问题实际上一样,都是要在两个未知数里面猜一个。没法保证通过。
              除非倒数第一个员工能同时提供自己和老板的号码(顺序不限制)给所有人,也就是两个数字的确切信息,否则对整体没有帮助。
              所以必须报告一个数字同时包括了自己和老板的号码的信息(比如三楼的两者的和除以2,约定四舍五入取整),也就是说报出的是第三个数字,这样就多杀死一个人,但是后面的人可以一直推算出老板和第一个员工的号码,保证自己通过(除了那个不幸的第三个数字,他只能用老板或者第一个员工的号码)。
              所以999人方案我觉得不行。998有戏


              9楼2014-01-15 21:33
              收起回复
                我的解题手稿哈,写在txt文档复制出来的,可能有点乱,也有可能有疏漏。
                997的解法。
                总体解题思想 必定是 最末的人报数 可以 提示前面的人的总值。前面的人,据此减去身前的人的总值,就得到自己的值
                最末报数是均值的方法 可取 ----------最终结果:遇到均值是整数,自己必定牺牲了(-1),另一个人也会牺牲(-1)。
                第二人,可以看到此第一人报的数,则可以得知,自己安全了。
                但是题目不允许小数。
                ---------另一结果:遇到均值是小数,第一人则报出一个未知数,自己基本牺牲了(-1)。
                报数规则(身前的是奇数那么报出偶数,留下奇数)
                第二人看不到第一人报的数,那么得知自己必须牺牲(-1),
                在第一人的结果下,还是有2个未知数,(第一人的配合下,和值必是偶数)
                ,计算出这两个未知数的均值,报出。
                第三人,可以通过计算得到自己的值了。


                IP属地:福建11楼2014-01-16 16:46
                收起回复
                  干嘛那么多人,100人不好吗


                  来自Android客户端12楼2014-01-18 00:04
                  收起回复
                    998没问题,999不可能,因为最后一个员工要将不知道的两数的信息告诉其他人,而且这个数要是1-1001中的数,为了保证999人不能和别人任何一个人重复,除非他报出来的数只能是自己的或者老板的。还是在两个未知数中选一个报,无法将两数信息传递给前边。


                    来自Android客户端13楼2014-01-18 00:20
                    收起回复
                      牺牲一个人,让这个人去绑架老板的家人


                      IP属地:四川来自iPhone客户端14楼2014-01-18 00:45
                      收起回复
                        反正已经知道老板计划了,团结起来,要么全部留下,要么全部辞职,而且还威胁要揍老板一顿,让老板自己选。


                        IP属地:广东15楼2014-01-19 05:51
                        回复
                          把老板打晕,1000个人都保住了


                          来自Android客户端16楼2014-01-20 08:29
                          收起回复