$O(n)$
#include<cstdio> const int fx[] = { 1,0,-1,0 }, fy[] = { 0,-1,0,1 }; int m, n, dir, x, y, a; char op[5]; int main() { for (scanf("%d%d", &m, &n); n--;) { scanf("%s%d", op, &a); if (op[0] == 'M') x += fx[dir] * a, y += fy[dir] * a; else dir = (dir + 3 + 2 * a) % 4; if (x<0 || y<0 || x>m || y>m) { puts("-1"); return 0; } } printf("%d %d", x, y); return 0; }
댓글 없음 :
댓글 쓰기