티스토리 뷰
https://www.acmicpc.net/problem/13567
시뮬레이션을 돌려본다. 실제 격자 상의 x,y와 구현 상의 x,y가 다르므로 헷갈리지 않게 주의하자.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | #include <cstdio> #include <cstring> int n,m,x,y,d,f; int dx[4]={0,-1,0,1},dy[4]={1,0,-1,0}; bool check(int x,int y) { return x>=0 && x<=n && y>=0 && y<=n; } int main() { scanf("%d %d",&n,&m); while(m--) { char op[5]; int c; scanf("%s %d",op,&c); if(!strcmp(op,"MOVE")) { if(check(x+dx[d]*c,y+dy[d]*c)) x+=dx[d]*c,y+=dy[d]*c; else { f=true; break; } } else { if(c==0) (d==0)?d=3:d--; else (d==3)?d=0:d++; } } if(f) printf("-1"); else printf("%d %d",y,x); return 0; } | cs |
'Algorithm > BOJ' 카테고리의 다른 글
13458 시험 감독 (0) | 2018.04.06 |
---|---|
12100 2048 (Easy) (0) | 2018.04.06 |
12026 BOJ 거리 (0) | 2018.03.30 |
5525 IOIOI (0) | 2018.03.14 |
1107 리모컨 (0) | 2018.03.14 |