반응형
def solution(dirs):
command = {'U':(0, 1), 'D':(0, -1), 'L':(-1, 0), 'R':(1, 0)}
road = set()
cur_x, cur_y = (0,0)
for d in dirs:
next_x, next_y = cur_x + command[d][0], cur_y + command[d][1]
if -5<= next_x <=5 and -5<= next_y <=5:
road.add((cur_x, cur_y, next_x, next_y)) #양방향 고려
road.add((next_x, next_y, cur_x, cur_y)) #양방향 고려
cur_x, cur_y = next_x, next_y
return len(road) // 2 #양방향으로 중복되어 있기 때문에 2로 나눠서 하나로 한방향으로 계산
반응형
'알고리즘 > 프로그래머스 level 1,2' 카테고리의 다른 글
[파이썬🐍] 프로그래머스 : 스킬트리 (0) | 2021.05.26 |
---|---|
[파이썬🐍] 프로그래머스 : 올바른 괄호 (0) | 2021.05.25 |
[파이썬🐍] 프로그래머스 : 방문 길이 (1) | 2021.05.23 |
[파이썬🐍] 프로그래머스 : 숫자의 표현 (0) | 2021.05.22 |
[파이썬🐍] 프로그래머스 : 가장 큰 정사각형 찾기 (0) | 2021.05.21 |
댓글