SWEA 4012シェフ(with Python)
def comb(n, r, idx):
if r <= 0:
global answer
# compute difference
food1_score = 0
food2_score = 0
for j in range(N):
for k in range(N):
if food[j] == food[k] and food[j] == 1:
food1_score += synergy_info[j][k]
elif food[j] == food[k] and food[j] == 0:
food2_score += synergy_info[j][k]
difference = abs(food1_score - food2_score)
if answer > difference:
answer = difference
return
for i in range(idx + 1, n):
if food[i] == 0:
food[i] = 1
comb(n, r-1, i)
food[i] = 0
T = int(input())
for tc in range(1, T+1):
N = int(input())
synergy_info = [list(map(int, input().split())) for _ in range(N)]
food = [0] * N
answer = 1e+10
comb(N, N//2, 0)
print(f'#{tc} {answer}')
Reference
この問題について(SWEA 4012シェフ(with Python)), 我々は、より多くの情報をここで見つけました https://velog.io/@daeungdaeung/SWEA-4012-요리사with-Pythonテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol