結果
問題 |
No.1045 直方体大学
|
ユーザー |
![]() |
提出日時 | 2025-03-14 12:39:47 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 687 bytes |
コンパイル時間 | 377 ms |
コンパイル使用メモリ | 82,104 KB |
実行使用メモリ | 188,192 KB |
最終ジャッジ日時 | 2025-03-14 12:39:52 |
合計ジャッジ時間 | 5,293 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 6 TLE * 1 -- * 10 |
ソースコード
n=int(input()) b=[list(map(int,input().split())) for i in range(n)] q=[[[0]*3 for j in range(n)] for i in range(1<<n)] for i in range(n): for j in range(3): q[1<<i][i][j]=b[i][j] for i in range(1<<n): for j1 in range(n): for k1 in range(3): for j2 in range(n): for k2 in range(3): if (i>>j1)&1==1 and (i>>j2)&1==0: b1=b[j1][:] b1.pop(k1) b2=b[j2][:] b2.pop(k2) if min(b1)<=min(b2) and max(b1)<=max(b2): q[i|(1<<j2)][j2][k2]=max(q[i|(1<<j2)][j2][k2],q[i][j1][k1]+b[j2][k2]) h=0 for i in range(1<<n): for j in range(n): for k in range(3): h=max(h,q[i][j][k]) print(h)