문제
N행 N열에서 (1, 1)부터 시작해 조건에 따라 움직일 때, 결과는?
조건 : L or R or U or D
유형
일련의 명령에 따라서 개체를 차례대로 이동시킨다는 점에서 '구현-시뮬레이션' 알고리즘
n = 5
start = [1, 1]
direction = ['R', 'R', 'R', 'U', 'D', 'D']
dx = [-1, 0, 1, 0]
dy = [0, -1, 0, 1]
dtype = ['U', 'L', 'D', 'R']
for i in direction:
for j in range(4):
if i == dtype[j]:
x_pos = start[0] + dx[j]
y_pos = start[1] + dy[j]
if 1 <= x_pos <= n and 1 <= y_pos <= n:
start[0] = x_pos
start[1] = y_pos
print(start)
시간 복잡도
O(N) : for문이 두개여도 하나는 방향 지정이라 4라고 봐야됨
- O(4N) = O(N)
'Algorithm > Implementation' 카테고리의 다른 글
럭키 스트레이트 (0) | 2023.04.09 |
---|---|
게임 개발 (0) | 2023.04.09 |
왕실의 나이트 (0) | 2023.04.08 |
시각 (0) | 2023.04.08 |
Implementation - Concept (0) | 2023.04.08 |