之前一直没有认认真真地花时间去思考这个题目。。。。。。。
分析:(关键在于如何建立状态)
(1)对于任何格子,都需要考虑是走还是飞
(2)如果当前格子是@,那么就只能飞
根据current和next的格子,有以下:
(1)当前是@,则无论下一步是什么,下一步都必须要飞,不飞会掉进陷阱的,耗费1s和1magic
(2)当前是“.”
下一格是@,则下一步必须要飞,@不能走,耗费1s和1magic
下一格式“.”,则下一步需要考虑两种情况,第一种是步行,耗费2s和0magic,第二种是飞,耗费1s和1magic
状态的建立:考虑到每一格可能是飞,也可能是步行,而飞与步行最终导致该格的magic各异,因此每一格的magic成为第三个状态的关键
代码不贴了,自己回去认真思考。。。。。。。