ror_coding

[Programmers] 방문 길이 - 49994 본문

Algorithm/Python

[Programmers] 방문 길이 - 49994

ro_rdil_31 2024. 12. 7. 17:51
728x90

set()을 이용해서 중복은 자동으로 안 겹치게 하기.

list로 풀었는데 이 방법이 더 좋은 것 같다 !

 

Question

 

명령어가 매개변수 dirs로 주어질 때, 게임 캐릭터가 처음 걸어본 길의 길이를 구하여 return 하는 solution 함수를 완성해 주세요.

 

Code

 

def solution(dirs):
    x, y, paths = 0, 0, set()
    ways = {'U':[0,1], 'D':[0,-1], 'L':[-1,0], 'R':[1,0]}
    for i in dirs:
        dx = x + ways[i][0]
        dy = y + ways[i][1]
        if ((-5 <= dx <= 5) and (-5 <= dy <= 5)):
            paths.add((x,y,dx,dy))
            paths.add((dx,dy,x,y))
            x, y = dx, dy
    return len(paths)//2

 

now me

On my github

 

728x90