結果
問題 |
No.733 分身並列コーディング
|
ユーザー |
![]() |
提出日時 | 2025-03-20 23:43:34 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 518 bytes |
コンパイル時間 | 318 ms |
コンパイル使用メモリ | 82,388 KB |
実行使用メモリ | 94,572 KB |
最終ジャッジ日時 | 2025-03-20 23:43:43 |
合計ジャッジ時間 | 8,767 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 3 TLE * 2 -- * 41 |
ソースコード
INF = 1 << 60 T = int(input()) N = int(input()) ts = [int(input()) for _ in range(N)] bset = set() for i in range(1 << N): t = sum(ts[j] for j in range(N) if i & (1 << j)) if t <= T: bset.add(i) dp = [INF] * (1 << N) dp[0] = 0 bit_all = (1 << N) - 1 for i in range(1 << N): if dp[i] == INF: continue mask = ~i & bit_all b = mask while b: if b in bset: ni = i | b dp[ni] = min(dp[ni], dp[i] + 1) b = (b-1) & mask ans = dp[bit_all] print(ans)