分組(狀壓dp+技巧:快速列舉子集)

cn是大帅哥886發表於2024-08-23

有n個物品,把n個物品分成若干組,如果第i個物品和第j個物品分在同一組的話,那麼你會得到a[i][j]個金幣((i,j)和(j,i)的貢獻只算一次),問如何分組得到的金幣最多。

輸入格式

第一行一個數n

接下來n行,每行n個數,表示a[i][j]

1<=n<=16,-1e9<=a[i][j]<=1e9,a[i][i]=0,a[i][j]=a[j][i]

輸出格式

一個整數

輸入/輸出例子1

輸入:

3

0 10 20

10 0 -100

20 -100 0

輸出:

20

輸入/輸出例子2

輸入:

2

0 -10

-10 0

輸出:

0

輸入/輸出例子3

輸入:

4

0 1000000000 1000000000 1000000000

1000000000 0 1000000000 1000000000

1000000000 1000000000 0 -1

1000000000 1000000000 -1 0

輸出:

4999999999

樣例解釋

相關文章