/* written by vishal choudhary email id vishal130.vk@gmail.com at Thu Dec 14 21:52:03 IST 2017 */ #include using namespace std; #define lli long long int #define ulli unsigned long long int #define ll long long #define ull unsigned long long #define mp make_pair #define s(n) scanf("%d",&n) #define sc(n) scanf("%c",&n) #define sl(n) scanf("%lld",&n) #define sf(n) scanf("%lf",&n) #define ss(n) scanf("%s",n) #define p(n) printf("%d",n) #define pc(n) printf("%c",n) #define pl(n) printf("%lld",n) #define pf(n) printf("%lf",n) #define ps(n) printf("%s",n) #define pn printf("\n") #define space printf(" ") #define loopf(X,Y) for(int i=X;iY;i--) #define dout(X) if(X) #define matrix(rowsize,colsize,type,name) vector> name((rowsize),vector<(type)>(colsize)); struct ppair{ int x,y; ppair(){}; ppair(int _x,int _y){ x=_x,y=_y; } }; struct pos{ int x,y,moves; pos(){}; pos(int _x,int _y,int _moves){ x=_x,y=_y,moves=_moves; } }; bool isInside(int x,int y,int n){ if(x<0 || x>n-1 || y<0 || y>n-1) return false; return true; } int myValue(int x,int y, int n){ int val=(n)*(x%n)+y%n; return val; } ppair whoIs(int val,int n){ int x=val/n; int y=val-n*x; ppair ret(x,y); return ret; } string step(int x,int y){ string ret; if(x==1 && y==-2) ret="LL"; else if(x==-1 && y==-2) ret="LR"; else if(x==1 && y==2) ret="UL"; else if(x==2 && y==0) ret="L"; else if(x==-2 && y==0) ret="R"; else if(x==-1 && y==2) ret="UR"; return ret; } int printShortestPath(int si,int sj,int ei,int ej,int n,vector & final_vect){ queue q; vector vect[n]; int dx[]={-1,1,2,1,-1,-2}; int dy[]={-2,-2,0,2,2, 0}; int visit[n][n],val=0,start_val=myValue(si,sj,n); for(int i=0;i final_vect; int val=0; /*for(int i=0;i=0;i--) cout<