#include using namespace std; bool issafe(int i,int n){ if(i<0||i>=n)return false; return true; } void printShortestPath(int n, int is, int js, int ie, int je) { queue>q; vectorpath; bool vis[n][n]; for(int i=0;iv; bool f=0;int c=0; while(!q.empty()){ v=q.front(); int i=v.first; int j=v.second; //cout<ie&&j>=je){ q.push(make_pair(i-2,j-1)); path.push_back("UL"); } if(issafe(i-2,n)&&issafe(j+1,n)&&i>ie&je>=j){ q.push(make_pair(i-2,j+1)); path.push_back("UR"); } if(issafe(j+2,n)&&j>js&&i==ie){ q.push(make_pair(i,j+2)); path.push_back("R"); } if(issafe(i+2,n)&&issafe(j+1,n)&&i=j){ q.push(make_pair(i+2,j+1)); path.push_back("LR"); } if(issafe(i+2,n)&&issafe(j-1,n)&&i=je){ q.push(make_pair(i+2,j-1)); path.push_back("LL"); } if(issafe(j-2,n)&&je> n; int i_start; int j_start; int i_end; int j_end; cin >> i_start >> j_start >> i_end >> j_end; printShortestPath(n, i_start, j_start, i_end, j_end); return 0; }