상하좌우 2

[PART2]CH.04_구현

예제4-1 상하좌우 여행가 A는 N * N 크기의 정사각형 공간 위에 서있다. 이공간은 1 * 1 크기의 정사각형으로 나누어져 있다. 가장 왼쪽 위 좌표는 (1, 1)이며 가장 오른 쪽 아래 좌표는 (N, N)에 해당한다. 여행가 A는 상, 하 ,좌 ,우 방향으로 이동할 수 있으며 시작좌표는 항상(1, 1)이다. 우리앞에는 여행가가 A가 이동할 계획서가 놓여있다. 계획서에는 하나의 줄에 띄어쓰기를 기준으로 하여 L, R, U, D중 하나의 문자가 반복적으로 적혀 있다. 각 문자의 의미는 다음과 같다. L : 왼쪽으로 한 칸 이동 R : 오른쪽으로 한 칸 이동 U : 위로 한 칸 이동 D : 아래로 한 칸 이동 이때 여행가 A가 N × N 크기의 정사각형 공간을 벗어나는 움직임은 무시된다 예를 들어 (1,..

상하좌우 SHIFT 알고리즘

문제 N x M 크기의 2차원 배열이 있다. 이 배열의 가장 왼쪽 위 칸은 (0, 0)으로, 가장 오른쪽 아래 칸은 (N-1, M-1)로 표현한다. 배열의 크기 N, M,과 배열의 값들, y, x, d, r 이 주어질 때, 이 배열의 (y, x) 위치에서 d 방향으로 r 만큼 이동한 위치의 값을 출력하는 프로그램을 작성하여라. d 가 0 이면 오른쪽, 1 이면 왼쪽, 2 면 아래, 3 이면 위를 의미한다. 처음 위치와 도착 위치 모두 배열 안에 있음이 보장된다. 입력 첫 번째 줄에 배열의 크기 N, M 이 주어진다. 두 번째 줄부터 N 개의 줄에 걸쳐 배열의 값들이 주어진다. 각 줄마다 M 개씩 숫자가 존재한다. 각 숫자는 10을 넘지 않는 자연수다. 마지막 줄에 y, x, d, r 이 주어진다. (3 ..

반응형