Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- maeil-mail
- JavaScript
- 항해99
- Algorithm
- 코딩테스트합격자되기
- json-server
- react-redux
- axios
- Get
- 프로그래머스
- 테코테코
- redux-toolkit
- redux
- 리액트
- redux-saga
- 알고리즘
- 자바
- createSlice
- 매일메일
- C++
- 항해플러스
- SW
- react-router
- sw expert academy
- useDispatch
- react
- 이코테
- java
- programmers
- Python
Archives
- Today
- Total
Binary Journey
[프로그래머스] 방문 길이 본문
반응형
출처: 프로그래머스 코딩 테스트 연습, 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 |