0 0
看完这题之后 我感觉这题并不难,只是有点麻烦, 感觉就是简单的对数组进行标记处理就行
下面贴上我的代码。
#include <stdio.h> int a[1000][1000]; int nn, mm; char fangxiang(int x, char ch) { if(x == 1) { a[nn][mm] = 0; if(ch == 'U') ch = 'R'; else if(ch == 'R') ch = 'D'; else if(ch == 'D') ch = 'L'; else if(ch == 'L') ch = 'U'; } else if(x == 0) { a[nn][mm] = 1; if(ch == 'U') ch = 'L'; else if(ch == 'L') ch = 'D'; else if(ch == 'D') ch = 'R'; else if(ch == 'R') ch = 'U'; } return ch; } void lujing(char ch) { if(ch == 'U') nn-=1; else if(ch == 'L') mm-=1; else if(ch == 'D') nn+=1; else if(ch == 'R') mm+=1; } int main() { int n, m; scanf("%d%d", &n, &m); int i, j; for(i = 0;i < n;i ++) for(j = 0;j < m;j ++) scanf("%d", &a[i][j]); char ch ; int k ; scanf("%d %d %c %d",&nn,&mm,&ch,&k); while(k--) { ch = fangxiang(a[nn][mm],ch); lujing (ch); } printf("%d %d", nn, mm); return 0; }