ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 동굴 탐험
    코딩 테스트/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)
    반응형
Designed by Tistory.