문제
NxN크기의 공간에서 L(왼쪽), R(오른쪽), U(위), D(아래)를 입력받아 한 칸씩 이동한다. 엔터를 칠때까지 최대 백번 입력받으며 범위 (1~N)에서 벗어날 경우 입력을 무시한다. 첫째줄에 N을 입력받고 그 다음 줄에 띄어쓰기를 기준으로 문자를 하나씩 입력받는다. 엔터시 입력은 종료된다. 다음 줄에 행과 열을 출력한다. |
코드
#include <iostream>
using namespace std;
int dx[] = { -1,1,0,0 };
int dy[] = { 0,0,-1,1 };
char m[] = { 'L','R','U','D' };
int main() {
int N, x = 1, y = 1;
cin >> N;
char map[100], input;
cin.get(input);
while (cin.get(input)) {
if (input == '\n')
break;
for (int i = 0; i < 4; i++) {
if (input == m[i]) {
x += dx[i];
y += dy[i];
cnt++;
}
if (x == N + 1)
x--;
if (x == 0)
x++;
if (y == N + 1)
y--;
if (y == 0)
y++;
}
}
cout << y << ' ' << x;
}
'코테 > 구현' 카테고리의 다른 글
[C/C++] 나동빈 문자열 재정렬, 구현 (0) | 2023.02.15 |
---|---|
[C/C++] 백준 18406, 구현 (0) | 2023.02.15 |
[C/C++] 나동빈 게임 개발, 구현 (0) | 2023.02.15 |
[C/C++] 나동빈 왕실의 나이트, 구현 (0) | 2023.02.15 |
[C/C++] 나동빈 시각, 구현 (0) | 2023.02.15 |