[BOJ 11376] 열혈강호 2
문제
https://www.acmicpc.net/problem/11376
풀이
열혈강호에서 직원 노드를 두 배로 늘리기만 하면 된다.
코드
import sys
def dfs(cur):
visit[cur] = 1
for nxt in graph[cur]:
if (b[nxt] == -1) or (not visit[b[nxt]] and dfs(b[nxt])):
b[nxt] = cur
return 1
return 0
n, m = map(int, sys.stdin.readline().split())
graph = [0] * (2 * n)
for i in range(n):
data = list(map(int, sys.stdin.readline().split()))
graph[2 * i] = data[1:]
graph[2 * i + 1] = data[1:]
b = [-1] * (m + 1)
ans = 0
for i in range(2 * n):
visit = [0] * (2 * n)
ans += dfs(i)
print(ans)
Leave a comment