結果

問題 No.1345 Beautiful BINGO
ユーザー aaaaaaaaaa2230
提出日時 2021-01-16 17:41:06
言語 PyPy3
(7.3.15)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 925 bytes
コンパイル時間 512 ms
コンパイル使用メモリ 82,172 KB
実行使用メモリ 78,804 KB
最終ジャッジ日時 2024-12-02 18:04:36
合計ジャッジ時間 47,019 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 45 TLE * 16
権限があれば一括ダウンロードができます

ソースコード

diff #

n,m = map(int,input().split())
A = [list(map(int,input().split())) for i in range(n)]

ans = 10**10
for i in range(1<<(n+2)):

    s = [[1]*n for i in range(n)]
    count = 0
    c = 0
    for j in range(n+2):
        if i >> j & 1:
            c += 1
            if j == n:
                for k in range(n):
                    count += A[k][k]*s[k][k]
                    s[k][k] = 0
            elif j == n+1:
                for k in range(n):
                    count += A[k][-1-k]*s[k][-1-k]
                    s[k][-1-k] = 0
            else:
                for k in range(n):
                    count += A[k][j]*s[k][j]
                    s[k][j] = 0
    l = []
    for i in range(n):
        l.append(sum([A[i][j]*s[i][j] for j in range(n)]))
    l.sort()
    now = 0
    if c+n < m:
        continue
    while c < m:
        c += 1
        count += l[now]
        now += 1
    ans = min(ans,count)

print(ans)
0