#include using namespace std; void printShortestPath(int n, int i_start, int j_start, int i_end, int j_end) { int a[200],c=0,flag=0; if((i_start>i_end&&j_start>j_end)||(i_start==i_end&&j_start>j_end)||(i_start>i_end&&j_start==j_end)) { while((j_start>j_end&&i_start>i_end)||(j_start==j_end&&i_start>i_end)||(j_start>j_end&&i_start==i_end)) { if(j_start-1>=j_end&&i_start-2>=i_end) { i_start=i_start-2; j_start=j_start-1; a[c]=1; c=c+1; } else if(i_start==i_end&&j_start-2>=j_end) { j_start=j_start-2; a[c]=5; c=c+1; } else if(i_start-1==i_end) { flag=1; break; } else if(i_start==i_end&&j_start-1==j_end) { flag=1; break; } } } if((j_startj_end&&i_start=j_end&&i_startj_end&&i_start<=i_end)) { while((j_start>j_end&&i_startj_end&&i_start==i_end)) { if((j_start-1>=j_end&&i_start+2<=i_end)||(j_start==j_end&&i_start+2=j_end) { j_start=j_start-2; a[c]=5; c=c+1; } else if(i_start+1==i_end) { flag=1; break; } else if(i_start==i_end&&j_start-1==j_end) { flag=1; break; } } } if((j_starti_end)||(j_start==j_end&&i_start>i_end)||(j_starti_end)||(j_start==j_end&&i_start>i_end)||(j_start=i_end)||(j_start==j_end&&i_start-2>=i_end)) { i_start=i_start-2; j_start=j_start+1; a[c]=3; c=c+1; } else if(i_start==i_end&&j_start+2<=j_end) { j_start=j_start+2; a[c]=6; c=c+1; } else if(i_start-1==i_end) { flag=1; break; } else if(i_start==i_end&&j_start+1==j_end) { flag=1; break; } } } if(flag==0) { 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; }