結果
問題 | No.1360 [Zelkova 4th Tune] 協和音 |
ユーザー |
![]() |
提出日時 | 2021-06-16 23:36:01 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 578 ms / 2,000 ms |
コード長 | 770 bytes |
コンパイル時間 | 276 ms |
コンパイル使用メモリ | 82,404 KB |
実行使用メモリ | 76,176 KB |
最終ジャッジ日時 | 2024-12-31 13:56:47 |
合計ジャッジ時間 | 13,785 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 47 |
ソースコード
from math import inf def main(): N = int(input()); INF = float("inf") A = list(map(int,input().split())) B = [list(map(int,input().split())) for _ in range(N)] mx = -INF idx = -1 for i in range(1,1<<N): #1個以上鳴らすので1から score = 0 for j in range(N): if (i>>j)&1 == 1: score += A[j] for p in range(N): for q in range(p+1,N): if (i>>p)&1 == 1 and (i>>q)&1 == 1: score += B[p][q] if score > mx: mx = score idx = i print(mx) ret = [] for i in range(N): if (idx>>i)&1 == 1: ret.append(i+1) #1-index print(*ret) if __name__ == '__main__': main()