百WA然後AC HDU 1728 逃離迷宮

2021-06-17 17:36:26 字數 733 閱讀 8681

這個怨念留的實在是太久了,得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"<