一人一次取完的火柴有哪些数字?
1个回答
展开全部
取火柴堆问题的终极解法:
取火柴游戏,无论是3、5、7,还是3、4、5,甚至是4堆5、6、7、8都可以用如下方法解决。
取火柴问题取胜的关键是判断火柴数量是否处于稳定态,谁能通过取火柴获得稳定态谁胜,谁取火柴破坏稳定状态谁输。
判断稳定状态需要用到数字的二进制表示法,记住常用十进制数字的二级制表示:
1=0001
2=0010
3=0011
4=0100
5=0101
6=0110
7=0111
8=1000
9=1001
以上二级制表示的个位上的1代表1,十位上的1代表2,百位上的1代表4,千位上的1代表8。如1001千位上的1代表8,个位上的1代表1,因此1001=8+1=9;同理,0111=4+2+1=7
稳定态的判断:将几堆火柴数量的二进制表示按个位依次对齐,如果个、十、百、千等各数位上1的数量均为偶数(0、2、4、...),则该组火柴数量构成稳定态。只要有任意数位上1的数量不是偶数,则该组火柴数量为非稳定态。
问题1、假设有3堆火柴,每堆分别有3、5、7根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态3、5、7的三个数字的二进制表示如下:
3=0011
5=0101
7=0111
该组数字个位上有3个1,十位有2个1,百位有2个1,因此该组数字为非稳定态。在非稳定态下,先取火柴者只要通过取火柴把非稳定态转化为稳定态,就能取胜。
在3、5、7非稳定态下,先取火柴者有三种办法可以将火柴数量转化为稳定态,即:从第一堆取1根变为2、5、7,或者从第二堆取1根变为3、4、7,或者从第三堆取1根变为3、5、6。这三种状态都是稳定态,如:
2=0010
5=0101
7=0111
个十百位上1的数量均为偶数2,为稳定态。
3=0011
4=0100
7=0111
个十百位上1的数量均为偶数2,为稳定态。
3=0011
5=0101
6=0110
个十百位上1的数量均为偶数2,为稳定态。
面临以上稳定状态,后取火柴者无论怎样取火柴都会破坏稳定态,转为非稳定态,必然会输。
假设后取者从第三堆上取走2根,火柴堆数量变为2、5、5,转为非稳定态。
2=0010
5=0101
5=0101
十位只有1个1,为非稳定态
此时,先取者的唯一正确取法是取光第一堆,火柴数量变为:0、5、5,转为稳定态
0=0000
5=0101
5=0101
个位有2个1,十位有0个1,百位有2个1,为稳定态
总之,先取者只要将后续遇到的非稳定态都转化为稳定态,就必然能取胜。
问题2:假设有3堆火柴,每堆分别有3、4、5根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态3、4、5的三个数字的二进制表示如下:
3=0011
4=0100
5=0101
该组数字个位上有2个1,十位只有1个1,百位有2个1,该组数字为非稳定态。先取者只有一种办法:即从第一堆上取走2根火柴,将该组数字转化为稳定态1、4、5,就能取胜。
1=0001
4=0100
5=0101
个位有2个1、十位有0个1,百位有2个1,所以是稳定态。
问题3:假设有4堆火柴,每堆分别有3、4、5、6根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态3、4、5、6四个数字的二进制表示如下:
3=0011
4=0100
5=0101
6=0110
该组数字个位上有2个1,十位有2个1,百位有3个1,该组数字为非稳定态。先取者,只要想办法减少百位上1的个数就能将该组数字转化为稳定态,有三种取法,即将四堆火柴数量转化为:3、0、5、6,或3、4、1、6或3、4、5、2。
问题4:假设有4堆火柴,每堆分别有6、7、8、9根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态6、7、8、9四个数字的二进制表示如下:
6=0110
7=0111
8=1000
9=1001
该组数字个位上有2个1,十位有2个1,百位有2个1,千位有2个1,该组数字为稳定态。
先取火柴者无论怎样取都会破坏稳定态,先取者必输。后取者只要将先取者破坏的非稳定态转为稳定态,就必然能取胜。
取火柴游戏,无论是3、5、7,还是3、4、5,甚至是4堆5、6、7、8都可以用如下方法解决。
取火柴问题取胜的关键是判断火柴数量是否处于稳定态,谁能通过取火柴获得稳定态谁胜,谁取火柴破坏稳定状态谁输。
判断稳定状态需要用到数字的二进制表示法,记住常用十进制数字的二级制表示:
1=0001
2=0010
3=0011
4=0100
5=0101
6=0110
7=0111
8=1000
9=1001
以上二级制表示的个位上的1代表1,十位上的1代表2,百位上的1代表4,千位上的1代表8。如1001千位上的1代表8,个位上的1代表1,因此1001=8+1=9;同理,0111=4+2+1=7
稳定态的判断:将几堆火柴数量的二进制表示按个位依次对齐,如果个、十、百、千等各数位上1的数量均为偶数(0、2、4、...),则该组火柴数量构成稳定态。只要有任意数位上1的数量不是偶数,则该组火柴数量为非稳定态。
问题1、假设有3堆火柴,每堆分别有3、5、7根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态3、5、7的三个数字的二进制表示如下:
3=0011
5=0101
7=0111
该组数字个位上有3个1,十位有2个1,百位有2个1,因此该组数字为非稳定态。在非稳定态下,先取火柴者只要通过取火柴把非稳定态转化为稳定态,就能取胜。
在3、5、7非稳定态下,先取火柴者有三种办法可以将火柴数量转化为稳定态,即:从第一堆取1根变为2、5、7,或者从第二堆取1根变为3、4、7,或者从第三堆取1根变为3、5、6。这三种状态都是稳定态,如:
2=0010
5=0101
7=0111
个十百位上1的数量均为偶数2,为稳定态。
3=0011
4=0100
7=0111
个十百位上1的数量均为偶数2,为稳定态。
3=0011
5=0101
6=0110
个十百位上1的数量均为偶数2,为稳定态。
面临以上稳定状态,后取火柴者无论怎样取火柴都会破坏稳定态,转为非稳定态,必然会输。
假设后取者从第三堆上取走2根,火柴堆数量变为2、5、5,转为非稳定态。
2=0010
5=0101
5=0101
十位只有1个1,为非稳定态
此时,先取者的唯一正确取法是取光第一堆,火柴数量变为:0、5、5,转为稳定态
0=0000
5=0101
5=0101
个位有2个1,十位有0个1,百位有2个1,为稳定态
总之,先取者只要将后续遇到的非稳定态都转化为稳定态,就必然能取胜。
问题2:假设有3堆火柴,每堆分别有3、4、5根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态3、4、5的三个数字的二进制表示如下:
3=0011
4=0100
5=0101
该组数字个位上有2个1,十位只有1个1,百位有2个1,该组数字为非稳定态。先取者只有一种办法:即从第一堆上取走2根火柴,将该组数字转化为稳定态1、4、5,就能取胜。
1=0001
4=0100
5=0101
个位有2个1、十位有0个1,百位有2个1,所以是稳定态。
问题3:假设有4堆火柴,每堆分别有3、4、5、6根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态3、4、5、6四个数字的二进制表示如下:
3=0011
4=0100
5=0101
6=0110
该组数字个位上有2个1,十位有2个1,百位有3个1,该组数字为非稳定态。先取者,只要想办法减少百位上1的个数就能将该组数字转化为稳定态,有三种取法,即将四堆火柴数量转化为:3、0、5、6,或3、4、1、6或3、4、5、2。
问题4:假设有4堆火柴,每堆分别有6、7、8、9根,两人每次可从任一堆火柴中取1跟或全部取完,最后一次取到火柴者为胜。
状态6、7、8、9四个数字的二进制表示如下:
6=0110
7=0111
8=1000
9=1001
该组数字个位上有2个1,十位有2个1,百位有2个1,千位有2个1,该组数字为稳定态。
先取火柴者无论怎样取都会破坏稳定态,先取者必输。后取者只要将先取者破坏的非稳定态转为稳定态,就必然能取胜。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询