Skip to content

Commit efc2b1d

Browse files
committed
[BOJ] 우수 마을 / 골드 2 / 70분/ 실패
https://www.acmicpc.net/problem/1949
1 parent a2488c1 commit efc2b1d

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import sys, collections
2+
3+
sys.setrecursionlimit(10 ** 6)
4+
5+
6+
def dfs(cur):
7+
visited[cur] = 1
8+
for u in g[cur]:
9+
if not visited[u]:
10+
dfs(u)
11+
dp[cur][1] += dp[u][0]
12+
dp[cur][0] += max(dp[u][0], dp[u][1])
13+
14+
15+
n = int(sys.stdin.readline().strip())
16+
cost = [0] + [int(x) for x in sys.stdin.readline().split()]
17+
18+
visited = [0 for _ in range(n + 1)]
19+
dp = [[0, cost[i]] * 2 for i in range(n + 1)]
20+
g = collections.defaultdict(list)
21+
22+
for _ in range(n - 1):
23+
v, u = map(int, sys.stdin.readline().split())
24+
g[v].append(u)
25+
g[u].append(v)
26+
27+
dfs(1)
28+
print(max(dp[1][1], dp[1][0]))

0 commit comments

Comments
 (0)