#include using namespace std; int N; int row[] = {-1,1,2,1,-1,-2}; int col[] = {-2,-2,0,2,2,0}; bool valid(int x, int y){ if (x < 0 || y < 0 || x >= N || y >= N) return false; return true; } string give_string(int mov){ if(mov==0){ return "UL "; }else if(mov==1){ return "UR "; }else if(mov==2){ return "R "; }else if(mov==3){ return "LR "; }else if(mov==4){ return "LL "; }else{ return "L "; } } struct Node{ int x, y, dist; string path=""; bool const operator==(const Node& o) const{ return x == o.x && y == o.y; } bool operator<(const Node& o) const{ return x < o.x || (x == o.x && y < o.y); } }; void BFS(Node src, Node dest){ map visited; queue q; q.push(src); while (!q.empty()){ Node node = q.front(); q.pop(); int x = node.x; int y = node.y; int dist = node.dist; string path=node.path; if (x == dest.x && y == dest.y){ cout<>N; int ix,iy,ex,ey; cin>>iy>>ix>>ey>>ex; Node src = {ix, iy}; Node dest = {ex, ey}; BFS(src,dest); return 0; }