抓住那头牛
题意
给起点nnn和终点kkk,问你几次操作可以从nnn到kkk。
操作:如果当前点为xxx,可以从X移动到x−1x-1x−1,x+1x+1x+1,或2∗x2*x2∗x的点
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
方法
(此为宽搜的题解,应该没有别的方法)
简单描述
先输入nnn和kkk
再调用宽搜函数,建议定义成int类型,如果到了就直接return步数
重点-宽搜
用一个队列记录每一次的点,第一次先把起点放进去。
每一次循环取队头,枚举队头所对应的3种情况入队。
注意不能走重复走的,可以用标记数组,不然每次都+1再-1就成了死循环
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
重点
一定要记住宽搜模版,以后要考