Open
Description
@jiseung 님의 정답이에요! 👏👏👏
제출한 정답
import sys
sys.setrecursionlimit(300000)
def dfs(graph, v, visited, k, a):
visited[v] = True
for i in graph[v]:
if not visited[i]:
dfs(graph, i, visited, k, a)
a[v] += a[i]
k[0] += abs(a[i])
a[i] = 0
def solution(a, edges):
answer = 0
sum = 0
for i in a: # 판별
sum += i
if sum != 0: # 판별하여 끝내기
answer = -1
return answer
graph = [[] for i in range(len(a))]
for i in edges:
graph[i[0]].append(i[1])
graph[i[1]].append(i[0])
visited = [False] * len(graph)
k = [0]
dfs(graph, 1, visited, k, a)
answer = k[0]
return answer
풀이 데이터
{
"probId": "76503",
"author": "jiseung",
"lang": "Python",
"createdAt": 1679486605290
}