AtCoder Regular Contest 056
C
部門分け
AtCoder
⌀ 2179
原题
← BD →
翻译中…

Problem Statement

翻译中…

高橋くんのいる会社は$N$人の社員からなる。社員$i$と社員$j$の間には、信頼度$w_{i,j}$が定まっている。 おかげ様で会社はぐんぐん成長したため、$N$人をいくつかの部門に分けることになった。ここで、部門分けのスコアを、(部門の数)*$K$-(異なる部門に属する$2$人の間の信頼度の総和)と定める。 スコアの最大値を求めるプログラムを書いてください。

翻译中…

Constraints

翻译中…
  • $1 ≦ N ≦ 17$
  • $i≠j$ のとき、 $1 ≦ w_{i,j} ≦ 10^6$
  • $w_{i,i} = 0$
  • $w_{i,j}=w_{j,i}$
  • $1 ≦ K ≦ 10^6$
  • 入力はすべて整数である
翻译中…

部分点

翻译中…
  • $N ≦ 9$ を満たすテストケース全てに正解した場合、部分点として$40$点が与えられる。
  • $N ≦ 15$ を満たすテストケース全てに正解した場合、部分点として追加で$40$点が与えられる。
翻译中…

Input

翻译中…

入力は以下の形式で標準入力から与えられる。

翻译中…

N K
w_{1,1} ... w_{1,N}
:
w_{N,1} ... w_{N,N}

翻译中…

Output

翻译中…

$1$行目に、スコアの最大値を出力せよ。

翻译中…

样例

Input #1
3 3
0 1 5
1 0 1
5 1 0
Output #1
4
社員$1$と$3$で$1$つの部門、社員$2$で$1$つの部門を作ると、 部門の数は$2$つ、異なる部門の間の$2$人の信頼度の総和は$2$なので、$2*3-2=4$となる。 スコアを$4$より大きくする方法はない。
Input #2
4 8
0 2 3 5
2 0 1 2
3 1 0 8
5 2 8 0
Output #2
11
Input #3
5 10
0 10 1 2 1
10 0 1 2 1
1 1 0 6 7
2 2 6 0 8
1 1 7 8 0
Output #3
12
题目信息
题号
arc056_c
时间限制
3 s
内存限制
256 MB

题面与样例版权归 AtCoder 及出题人所有;中文翻译由 AI 生成(CI 管线),如有出入请以原文为准。