https://school.programmers.co.kr/learn/courses/30/lessons/49994
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
def solution(dirs):
answer = 0
x,y = 0,0
visited = set()
for d in dirs:
if d == 'U' and y < 5:
visited.add(((x, y), (x, y+1)))
y += 1
elif d == 'D' and y > -5:
visited.add(((x, y-1), (x, y)))
y -= 1
elif d == 'R' and x < 5:
visited.add(((x, y), (x+1, y)))
x += 1
elif d == 'L' and x > -5:
visited.add(((x-1, y), (x, y)))
x -= 1
return len(visited)
다른 분 풀이를 참고 했는데 이미 방문한곳을 집합으로 처리하면서 간단하게 해결 가능하다.
set 을 이용하고 add를 이용하자
반응형
'코딩 > 프로그래머스 lv2' 카테고리의 다른 글
[프로그래머스] 스킬트리 - python (0) | 2022.11.08 |
---|---|
[프로그래머스] 조이스틱 - 파이썬 (0) | 2022.04.10 |
[프로그래머스] 네트워크 - 파이썬 (0) | 2022.04.07 |
[프로그래머스] [3차] 압축 - 파이썬 (0) | 2022.03.24 |
[프로그래머스] 후보키 - 파이썬 (0) | 2022.03.23 |