목록Algorithms/Graph (2)
# 1번시작 2번 끝 # 일방통행 # 1~N 마을 # M 개 일방통행 도로 # return 총 경로수 # 9자리 넘으면 뒤의 9자리만 출력 # 무한대 inf - 어떻게 가능?? # 시간 초과... # 메모리 초과... from collections import defaultdict import sys sys.setrecursionlimit(10**3) # n = 노드 개수 # m = 간선 개수 n, m = map(int, input().split()) case = 0 roads = defaultdict(list) inf_ck = False # A->B for _ in range(m): a, b = map(int, input().split()) roads[a].append(b) def dfs(n): glo..
from collections import defaultdict def solution(n, results): answer = 0 win, lose = defaultdict(set), defaultdict(set) for result in results: # 키 = 패자 / 값 = 승자 lose[result[1]].add(result[0]) # 키 = 승자 / 값 = 패자 win[result[0]].add(result[1]) for i in range(1, n+1): for winner in lose[i]: # win[i]: 승자 i가 이긴 패자 추가 win[winner].update(win[i]) for loser in win[i]: # lose[i]: 패자 i가 진 승자 추가 lose[loser].u..