def bfs(n,gra,cut):
visit=[0]*(n+1)
cnt=1#n=1
q=[]
q.append(cut[0]) #q.append(wires[1][0])
visit[cut[0]]=cnt
visit[cut[1]]=-1
while q:
x=q.pop(0)
for i in gra[x]:
if visit[i]==0:
cnt+=1
visit[i]=cnt
q.append(i)
return cnt
def solution(n, wires):
answer = n
gra=[[]for i in range(n+1)]
for i,j in wires:
gra[i].append(j)
gra[j].append(i)
for i in wires:
ncnt=bfs(n,gra,i)
answer=min(answer,abs((n-ncnt)-ncnt)) #전체에서 연결된 나머지-
#maxncnt=ncnt
#if(ncnt>maxncnt):
#maxa=a
#print(n)
#print(visit)
return answer
카테고리 없음