[문제]
이것이 취업을 위한 코딩 테스트다 with 파이썬 의 p.110 예제 4-1 상하좌우
[입력 조건]
- 첫째 줄에 공간의 크기를 나타내는 N이 주어진다. (1≤ N ≤ 100)
- 둘째 줄에 여행가 A가 이동할 계획서 내용이 주어진다. (1≤ 이동횟수 ≤ 100)
[출력 조건]
- 첫째 줄에 여행가 A가 최종적으로 도착할 지점의 좌표 (X,Y)를 공백으로 구분하여 출력한다.
<입력 예시>
5
R R R U D D
<출력예시>
3 4
[책 풀이]
🔎 아이디어
- 문제의 요구사항대로 구현한다.
- 리스트에 인덱스를 이용하여 이동 정보를 저장하고 사용한다.
🔎 코드
n = int(input())
plan = list(input().split())
x,y=1,1
#인덱스를 이용하여 관련있는 정보 저장, 사용
move_type = ['L','R','U','D']
dx = [0,0,-1,1]
dy = [-1,1,0,0]
for move in plan:
for i in range(len(move_type)):
if move == move_type[i]:
nx = x + dx[i]
ny = y + dy[i]
#공간을 벗어나는 경우 무시
if nx < 1 or ny < 1 or nx > n or ny > n:
continue
x, y = nx, ny
print(x,y)
출처: 이것이 취업을 위한 코딩 테스트다 with 파이썬
* 포스팅에 책의 내용과 개인적인 해석이 같이 포함됩니다.
'알고리즘 문제풀이 > 파이썬' 카테고리의 다른 글
[이코테-구현] 실전 - 왕실의 나이트 (0) | 2022.06.17 |
---|---|
[이코테-구현] 예제 - 시각 (0) | 2022.06.17 |
[이코테-그리디] 기출 - 06.무지의 먹방 라이브 (0) | 2022.05.09 |
[이코테-그리디] 기출 - 05. 볼링공 고르기 (0) | 2022.05.08 |
[이코테-그리디] 기출 - 04. 만들 수 없는 금액 (1) | 2022.05.08 |