728x90
https://www.acmicpc.net/problem/14889
조합)
import sys
from itertools import combinations
n = int(sys.stdin.readline())
graph = [ list(map(int, sys.stdin.readline().split())) for _ in range(n) ]
members = list(range(n)) #1
min_value = sys.maxsize #2
for r1 in combinations(members, n//2): #3
start, link = 0, 0
r2 = list(set(members) - set(r1)) #4
for r in combinations(r1, 2): #5
start += graph[r[0]][r[1]]
start += graph[r[1]][r[0]]
for r in combinations(r2, 2): #6
link += graph[r[0]][r[1]]
link += graph[r[1]][r[0]]
min_value = min(min_value, abs(start-link)) #7
print(min_value)
백준: 6603번 : 로또, 사탕 게임
728x90
'[Coding Test] > [백준]' 카테고리의 다른 글
[백준] 3085: 사탕 게임 (0) | 2022.07.16 |
---|---|
[백준] 2309: 일곱 난쟁이 (0) | 2022.07.16 |
[백준] 4963: 섬의 개수 (0) | 2022.07.10 |
[백준] 11724: 연결 요소의 개수 (0) | 2022.07.08 |
[백준] 1929 파이썬(python) : 소수 구하기 - (에라토스테네스의 체) (0) | 2022.07.05 |