求助:棋子颜色变化
任意拿出黑白两种颜色的棋子共8个,排成一个圆圈,然后在两颗颜色相同的棋子中间放一颗黑色的棋子,在颜色不同的棋子中间放一颗白色的棋子,放完了撤掉原来的棋子,再重复,问最终棋子怎么变化?拜托拜托各位高手一定帮忙! 我是这样想的,给棋子赋值,黑棋=1,白旗=-1,然后在讨论!不过至今还没有结果,请高手指教啊!
假如答案唯一的话,考虑极端情况,比如说全是黑子的时候,最后答案应该是全是黑的! 别用-1,不好列式子。最简单的数字序列模型:黑1白0。
单步变换规则:在两颗颜色相同的棋子中间放一颗黑色的棋子,在颜色不同的棋子中间放一颗白色的棋子。可以导出产生式:
00→1
11→1
01→0
10→0
8个棋子用abcdefgh表示,每个字母都可以代表0或1,这样实际上是一个8位的二进制数,每个数可以产生一个固定的变换结果,总共不过256个数,写个程序求变换结果极其容易。 进一步分析:
这种变换规则实际上是循环移位求同或:即 NOT(XOR(abcdefgh,bcdefgha))
(上面假设得不太好,如果设黑0白1就是求异或,可以把NOT省掉。)
易知变换结果的集合为初始集合的真子集,所以最终结果是收敛的。
计算结果表明,所有初始组合在不超过8次变换内收敛到255,即全变成黑棋。
我认为
用1,-1 叫好
殊路同归
<P>其实,这两种方法是充分利用了各自特有地性质:</P><P>法一 0*任何数=0</P>
<P>法二 同号为正,异号为负</P>
页:
[1]