#include using namespace std; #define INF 10000000 int vis[205][205]; int dp[205][205]; int dx[]={-2,-2,0,2,2,0}; int dy[]={-1,1,2,1,-1,-2}; string dirs[]={"UL","UR","R","LR","LL","L"}; struct node { int x; int y; string path; }; void reset(int n) { for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { dp[i][j]=0; vis[i][j]=0; } } } int bounds(int i,int j,int n) { if(i>=0 && i=0 && jq; reset(n); q.push((node){i_start,j_start,""}); vis[i_start][j_start]=1; while(!q.empty()) { node pp =q.front(); q.pop(); int x =pp.x; int y =pp.y; //printf("%d %d\n",x,y ); string path = pp.path; if(x==i_end && y==j_end) { printf("%d\n",dp[x][y] ); cout<> 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; }