백준 22860 폴더 정리 (small) Python

Derhon·2023년 12월 4일
0
post-custom-banner

백준 22860 폴더 정리 (small)

60+

나의 답

import sys
sys.setrecursionlimit(10 ** 6)
input = sys.stdin.readline

cd = {}

def find_files(path, array):
    if path not in cd:
        return
    for f in cd[path]:
        if not f[1]:
            array.append(f[0])
        else:
            find_files(f[0], array)

n, m = list(map(int, input().rstrip().split()))
for _ in range(n + m):
    root, name, is_folder = input().rstrip().split()
    if root not in cd:
        cd[root] = []
    cd[root].append([name, int(is_folder)])

for _ in range(int(input().rstrip())):
    path = input().rstrip().split('/')
    files = []
    find_files(path[-1], files)
    print(len(list(set(files))), len(files))

접근은 동일하게 했는데 array를 찾는 과정을 못구해서 결국 검색ㅠㅠ
역시 60분 이상 걸렸다... 구현은 너무 오래걸린다ㅠㅠ

profile
🧑‍🚀 이사했어요 ⮕ https://99uulog.tistory.com/
post-custom-banner

0개의 댓글