教材上的框架是这么写的:
队列初始化;
初始状态入队;
while (队列不为空)
{
取队首元素进行拓展;
for (对所有可能的拓展状态)
{
if (新状态合法)
入队;
if (当前状态是目标状态)
处理(输出解或比较解的优劣);
}
}
我的第一个问题是:如果初始状态就是目标状态,这个框架是不是就不对了?
在
P1135 奇怪的电梯
中的第二个测试点是不是就是这种情况?我写了特盘后就AC了,没写特判是90分。
我的第二个问题是,为什么要先判断新状态合法,再判断是不是目标状态?先判断是不是目标状态会不会因为少一次入队操作效率高一点点
求大佬解答