uva10795 - A Different Task(新汉诺塔问题)
摘要:
这个题不同的是开始状态不规则,目标状态也不规则我们这里有个折中的方法,就是从开始和目标两个状态同时向一个参考状态移动。我们分析这个问题,会发现我们必须先把最大的圆盘放到目标位置,所以目前位置s和目标位置p上都不能存在其他比当前圆盘小的圆盘,然后把最大的圆盘从s移动到p上,所以ans等于把其他的圆盘从s移动到中转位置的步骤数step1加上把其他的圆盘从p移动到中转位置的步骤数step2再加上1所以ans = step1+step2+1;其他的移动方式和经典的汉诺塔差不多了,不过我们发现总共3个位置,要想把其他的圆盘移动到中转位置上,s和p位置上除了当前圆盘外都是空的,那么中转位置上肯定是有序的, 阅读全文
浙公网安备 33010602011771号