Baekjoon #15661

Baekjoon #15661

1개의 풀이 · Python

문제 원문 보기 ↗

SOLUTION INFO

Python · main.py

main.py
import sys
from itertools import combinations

def input():
    return sys.stdin.readline().rstrip()

N = int(input())
arr = []
num = [i for i in range(N)]
MIN = 1e9
for i in range(N):
    arr.append(list(map(int, input().split())))
comb_list = list(combinations(num, N//2))
for comb in comb_list:
    start = 0
    link = 0
    remain = [i for i in range(N) if i not in comb]
    for com in combinations(comb, 2):
        start += arr[com[0]][com[1]]
    for ar in combinations(remain, 2):
        link += arr[ar[0]][ar[1]]
    MIN = min(MIN, abs(start - link))
print(MIN)

SOLUTION DESCRIPTION

풀이 설명

등록된 풀이 설명이 없습니다.