Monthly Archives: 08月 2008

happy wedding

我们翠翠星期天正式荣升为港太了.恭喜翠翠和Rayman兄!祝白头到老. 在香港结婚的签字仪式我还没见过,但这个星期天我们将亲自去到香港现场见证他们的签字仪式.然后顺便再逛逛靠左走的香港.  

Posted in 其他 | Leave a comment

玩玩汉诺塔

朋友家有个八层的小汉诺塔.好玩心起我忍不住玩了一下,不料却一玩停不了手.从一开始要花三十分钟把八块塔片移动另一条柱子上,四次之后变成五分钟内完成,最后演变成手指速度的考验.汉诺塔的移动规律已了然于心.最好成绩是3分钟左右,玩下来后,唯一感觉就是手累. 汉诺塔的玩法很简单,就是要玩家把串在某一条柱子上的所有塔片都移动到另一条柱了,要求在移动过程中: 1.不能用大片压在小片上面 2.一次只能移动一片 3.塔片只能够在三条柱子中间转移,不能离开三条柱子. 我发现了一些规律: 1.按源柱的塔片数目算,如果是奇数,第一步先移往目标柱,反之则移往附助柱. 2.重复动作一直在重复.如在两次连续移动当中肯定有一个移动是最小的塔片的移动.也就是说小塔片的移动占了所有移动的一半. 3.过程中不断地变化三个柱子的身份,源柱,输助柱与目标柱. 后来在网上找到更有概括性的文字: 1.如果只有一个金片,则把该金片从源移动到目标棒,结束。 2.如果有n个金片,则把前n-1个金片移动到辅助的棒,然后把自己移动到目标棒,最后再把前n-1个移动到目标棒 这是很明显的递归算法..既然这样,何不写一段代码算算自己三分多钟里面称动了多少次塔片: python 代码   def hano(count,source,target,help): if count == 1: print ‘%s -> %s’%(source,target) else: hano(count – 1,source,help,target)# 前N-1个移动附助 print ‘%s -> %s’%(source,target) hano(count – 1,help,target,source)# 移动前N-1个到目标塔. hano(3,’B’,’A’,’C’) … Continue reading

Posted in 其他 | Leave a comment