#include #include #include #include #include #include #include void printShortestPath(int n, int sy, int sx, int ey, int ex) { //down if(sx==ex && syey){ if((sy-ey)%2==0){ printf("%d\n",(sy-ey)/2); for(int i=1;i<=(sy-ey)/4;i++){ printf("UL "); } for(int i=1;i<=(sy-ey)/4;i++){ printf("UR "); } printf("\n"); return; } } //right else if(sy==ey && sxex){ if((sx-ey)%2==0){ printf("%d\n",(sx-ey)/2); for(int i=1;i<=(sx-ey)/2;i++){ printf("R "); } printf("\n"); return; } } //lowerright else if(ex>sx && ey>sy){ if((ey-sy)%2==0){ int d=(ey-sy)/2; int c=((ex-sx)-d)/2; printf("%d\n",c+d); for(int i=1;i<=c;i++){ printf("R "); } for(int i=1;i<=d;i++){ printf("LR "); } printf("\n"); return; } } //lowerleft else if(sx>ex && ey>sy){ if((ey-sy)%2==0){ int e=(ey-sy)/2; int f=((sx-ex)-e)/2; printf("%d\n",e+f); for(int i=1;i<=e;i++){ printf("LL "); } for(int i=1;i<=f;i++){ printf("L "); } printf("\n"); return; } } //upleft else if(sx>ex && sy>ey){ if((sy-ey)%2==0){ int a=(sy-ey)/2; int f=((sx-ex)-a)/2; printf("%d\n",a+f); for(int i=1;i<=a;i++){ printf("UL "); } for(int i=1;i<=f;i++){ printf("L "); } printf("\n"); return; } } //upright else if(ex>sx && sy>ey){ if((sy-ey)%2==0){ int b=(sy-ey)/2; int c=((ex-sx)-b)/2; printf("%d\n",b+c); for(int i=1;i<=b;i++){ printf("UR "); } for(int i=1;i<=c;i++){ printf("R "); } printf("\n"); return; } } printf("Impossible\n"); return; } int main() { int n; scanf("%i", &n); int sx; int sy; int ex; int ey; scanf("%i %i %i %i", &sy, &sx, &ey, &ex); printShortestPath(n,sy,sx,ey,ex); return 0; }