-
동굴 탐험코딩 테스트/Level 4 2022. 12. 10. 13:53반응형
https://school.programmers.co.kr/learn/courses/30/lessons/67260
def solution(n, path, order): from collections import deque tree = {} for a, b in path: tree.setdefault(a, set()) tree.setdefault(b, set()) tree[a].add(b) tree[b].add(a) orders = {b: a for a, b in order} # '도착: 출발' 로 순서 바꿈 queue = deque([0]) visited = set() yet = {} while queue: node = queue.popleft() if node in orders and orders[node] not in visited: # (1) 출발이 visited 에 없을 때 보류 yet[orders[node]] = node # '출발: 도착' 순 continue if node not in visited: visited.add(node) for next_node in tree[node]: queue.append(next_node) if node in yet: # (1) 조건을 건너 뜀 = 출발이 visited 에 있음. 큐에 넣음. queue.append(yet[node]) return len(visited) == n
정확성 테스트 테스트 1 〉 통과 (0.02ms, 10.3MB) 테스트 2 〉 통과 (0.02ms, 10.2MB) 테스트 3 〉 통과 (0.20ms, 10.3MB) 테스트 4 〉 통과 (2.29ms, 10.5MB) 테스트 5 〉 통과 (1.06ms, 10.2MB) 테스트 6 〉 통과 (2.19ms, 10.5MB) 테스트 7 〉 통과 (0.19ms, 10.1MB) 테스트 8 〉 통과 (0.74ms, 10.3MB) 테스트 9 〉 통과 (1.52ms, 10.5MB) 테스트 10 〉 통과 (0.01ms, 10.2MB) 테스트 11 〉 통과 (0.09ms, 10.2MB) 테스트 12 〉 통과 (0.02ms, 10.1MB) 테스트 13 〉 통과 (0.03ms, 10.1MB) 테스트 14 〉 통과 (0.03ms, 10.1MB) 테스트 15 〉 통과 (0.14ms, 10.1MB) 테스트 16 〉 통과 (0.18ms, 10.2MB) 테스트 17 〉 통과 (1.72ms, 10.7MB) 테스트 18 〉 통과 (1.26ms, 10.5MB) 테스트 19 〉 통과 (1.41ms, 10.5MB) 테스트 20 〉 통과 (0.11ms, 10.2MB) 테스트 21 〉 통과 (0.09ms, 10.1MB) 테스트 22 〉 통과 (1.44ms, 10.4MB) 테스트 23 〉 통과 (0.02ms, 10.2MB) 테스트 24 〉 통과 (0.05ms, 10.1MB) 테스트 25 〉 통과 (0.11ms, 10.1MB) 테스트 26 〉 통과 (1.35ms, 10.8MB) 테스트 27 〉 통과 (0.11ms, 10.4MB) 테스트 28 〉 통과 (1.28ms, 10.5MB) 테스트 29 〉 통과 (0.03ms, 10.1MB) 테스트 30 〉 통과 (0.01ms, 10.1MB) 테스트 31 〉 통과 (0.02ms, 10.3MB) 테스트 32 〉 통과 (0.03ms, 10.1MB) 테스트 33 〉 통과 (0.79ms, 10.6MB) 테스트 34 〉 통과 (2.12ms, 10.6MB) 효율성 테스트 테스트 1 〉 통과 (566.95ms, 136MB) 테스트 2 〉 통과 (563.86ms, 136MB) 테스트 3 〉 통과 (620.83ms, 136MB) 테스트 4 〉 통과 (601.53ms, 128MB) 테스트 5 〉 통과 (523.41ms, 129MB) 테스트 6 〉 통과 (609.21ms, 128MB) 테스트 7 〉 통과 (565.63ms, 136MB) 테스트 8 〉 통과 (527.38ms, 136MB) 테스트 9 〉 통과 (266.36ms, 126MB) 테스트 10 〉 통과 (370.61ms, 134MB)
반응형