牛客训练四:Applese 走方格(细节)

题目链接:传送门

思路:主要是n=1,m=2或者n=2,m=1时,不是-1。

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main(void)
{
    int n,m,i,j;
    while(~scanf("%d%d",&n,&m)){
        if(n==1){
            if(m==2) printf("RL");
            else printf("-1");
        }
        else if(m==1){
            if(n==2) printf("DU");
            else printf("-1");
        }
        else if(n%2==1&&m%2==1){
            printf("-1");
        }
        else if(m%2==0){
            for(i=0;i<m-1;i++) printf("R");printf("D");
            for(i=m;i>=1;i--){
                if(i%2==0){
                    for(j=1;j<=n-2;j++) printf("D");printf("L");
                }
                else{
                    for(j=1;j<=n-2;j++) printf("U");
                    if(i==1) printf("U");
                    else printf("L");
                }
            }
        }
        else if(n%2==0){
            for(i=0;i<n-1;i++) printf("D");printf("R");
            for(i=n;i>=1;i--){
                if(i%2==0){
                    for(j=1;j<=m-2;j++) printf("R");printf("U");
                }
                else{
                    for(j=1;j<=m-2;j++) printf("L");
                    if(i==1) printf("L");
                    else printf("U");
                }
            }
        }
        printf("\n");
    }
    return 0;
}
View Code

猜你喜欢

转载自www.cnblogs.com/2018zxy/p/10335443.html