백준 풀이

백준 14889번 파이썬 (백트레킹)

ag2개발자 2022. 9. 1. 14:20
def ii(depth,index):
    global minva
    if depth==n//2:
        num1,num2=0,0
        for i in range(n):
            for j in range(n):
                if visited[i] and visited[j]:
                    num1+=g[i][j]
                elif not visited[i] and not visited[j]:
                    num2+=g[i][j]
        minva = min(minva,abs(num1-num2))
        return
    
    for p in range(index,n):
        if not visited[p]:
            visited[p]=1
            ii(depth+1,p+1)
            visited[p]=0


n=int(input())
visited=[0]*n
g=[list(map(int,input().split())) for _ in range(n)]
minva=int(1e9)

ii(0,0)
print(minva)

#minva = minvalue

'백준 풀이' 카테고리의 다른 글

백준 1991번 파이썬 (트리)  (0) 2022.09.01
백준 2108번 파이썬 (Counter 함수)  (0) 2022.09.01
백준 1753번 파이썬(다익스트라)  (0) 2022.08.31
백준 1011번 파이썬  (0) 2022.08.31
백준 1011번 파이썬  (0) 2022.08.31