반응형
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
** Python
코드 실행에서는 통과됐는데 채점에서 35퍼 나와서 뭐가 문제인가 했는데
질문하기에 방향성이 없어야 한다는 말에 깨달음
(1,1) -> (0,1) 이랑 (0,1) -> (1,1) 은 같은 길을 갔으므로 카운트 되면 안됨
def solution(dirs):
answer = 0
loc = [0, 0]
strd = {'U': (0, 1), 'D': (0, -1), 'R': (1, 0), 'L': (-1, 0)}
visited = set()
for d in dirs:
old_x = loc[0]
old_y = loc[1]
new_x = loc[0] + strd[d][0]
new_y = loc[1] + strd[d][1]
if new_x > 5 or new_x < -5 or new_y > 5 or new_y < -5:
continue
road1 = (old_x, old_y, new_x, new_y)
road2 = (new_x, new_y, old_x, old_y)
visited.add(road1)
visited.add(road2)
loc = [new_x, new_y]
return len(visited) // 2
그래서 그냥 두 개 다 넣어버리고 2로 나눔 ㅋㅋㅋㅋ
다른 사람 풀이 보니까 방향성은 괜찮았던 것 같다
가장 추천 많이 받은 풀이랑 비슷해서 뿌듯
반응형
'프로그래머스 > level 2' 카테고리의 다른 글
[프로그래머스] 스킬트리 (0) | 2022.01.18 |
---|---|
[프로그래머스] n^2 배열 자르기 (0) | 2022.01.17 |
[프로그래머스] 방금그곡 (0) | 2022.01.04 |
[프로그래머스] 파일명 정렬 (0) | 2021.12.28 |
[프로그래머스] 압축 (0) | 2021.12.28 |