這個怨念留的實在是太久了,得4-5天了,怎麼改都不a,終於在今天ac了。
這個題有好多梗:
1、輸入的時候竟然是反著的,先列後行。
2、計算轉彎次數就要一口氣走到頭,而不是半路直接+轉彎次數,因為初始的行走方向是不一定的。
3、當起點等於終點的時候要直接返回正確,否則會報錯的。
其他的看上去就是很水的bfs了。。
#include #include #include using namespace std;
char mat[105][105];
int visited[105][105];
int dir[4][2]=,,,};
int m,n;
int maxturn;
class node
;node s1,e1;
int judge(int x,int y)
int bfs(node st,node ed)
next.x+=dir[i][0];
next.y+=dir[i][1];
}}
} return 0;
}int main()
} cin>>maxturn>>tx1>>ty1>>tx2>>ty2;
s1.x=ty1;
s1.y=tx1;
e1.x=ty2;
e1.y=tx2;
if(bfs(s1,e1)==1)
cout<<"yes"<