본문 바로가기

항해

(3)
[프로그래머스/python] Level2 - 무인도 💬 문제 🔨 입출력 💡 해결 문제를 보고 기본적인 탐색 문제라서 다시 한번 되짚어 본다는 느낌으로 풀었다. 최단 거리를 묻지 않고 기본 탐색 이기 때문에 DFS를 한번 써볼려고 했다. map에 있는 자료들을 arr로 옮겨놓고 원래는 "X"로 되어 있는 공간을 arr에 0으로 채워주었다. 그런데 이걸 깜빡하고 나중에 조건에서 arr != "X"라고 하여 꽤 시간을 뺐겼다.. 뭐 이정도는 금방 풀었는데 중요한건 프로그래머스 환경에서 제출시 런타임 에러가 나는 것이었다. 내가 잘못 푼 줄 알고 코드를 고치다가 단톡방에 물어봤는데.. sys.setrecursionlimit을 사용하여 재귀횟수에 제한을 걸라는 것이었다. import sys sys.setrecursionlimit(int(1e7)) 이게 뭐람.. 백..
[프로그래머스/Python] Level2 - 택배상자 💬 문제 🔨 입출력 예 💡 해결 큐와 스택을 사용하는 자료구조 문제로 너무 직관적이었다. 처음에 큐를 써야 될까? 라는 생각이 들었지만 직관적으로 큐와 스택을 사용하여 풀기로 하였다. from collections import deque def solution(order): n = len(order) now = 0 arr = deque() stack = [] result = 0 for i in range(n): arr.append(i+1) while True: if len(arr) == 0 and (len(stack) ==0 or stack[-1] != order[now]): return result if len(arr) >0: tmp = arr[0] else: tmp = -1 if tmp == orde..
[프로그래머스/Python] Level2 - 피로도 💬 문제 XX게임에는 피로도 시스템(0 이상의 정수로 표현합니다)이 있으며, 일정 피로도를 사용해서 던전을 탐험할 수 있습니다. 이때, 각 던전마다 탐험을 시작하기 위해 필요한 "최소 필요 피로도"와 던전 탐험을 마쳤을 때 소모되는 "소모 피로도"가 있습니다. "최소 필요 피로도"는 해당 던전을 탐험하기 위해 가지고 있어야 하는 최소한의 피로도를 나타내며, "소모 피로도"는 던전을 탐험한 후 소모되는 피로도를 나타냅니다. 예를 들어 "최소 필요 피로도"가 80, "소모 피로도"가 20인 던전을 탐험하기 위해서는 유저의 현재 남은 피로도는 80 이상 이어야 하며, 던전을 탐험한 후에는 피로도 20이 소모됩니다. 이 게임에는 하루에 한 번씩 탐험할 수 있는 던전이 여러개 있는데, 한 유저가 오늘 이 던전들을..