Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include<iostream>#include<cstring>#include<queue>using namespace std;int n, m;int a[505];int b[505];bool barrier[505][505] = { false };bool visit[505][505];int dis[505][505];struct point{int x;int y;point(int a, int b){x = a;y = b;}};int bfs(int sx, int sy, int tx, int ty){queue<point>q;q.push(point(sx, sy));visit[sx][sy] = true;dis[sx][sy] = 0;while (!q.empty()){point t = q.front();q.pop();int x = t.x;