提出 #6345215
ソースコード 拡げる
import sys
input = sys.stdin.readline
from heapq import heappushpop
N = int(input())
A = [int(x) for x in input().split()]
# B_x = max {A_y | y\subset x}
# と思ったが、2元ずつ持つ必要がある。
# (値、何番から来たか)
B = []
for n,a in enumerate(A):
arr = [(0,0),(a,n)]
m = n
while m:
bit = m & (-m)
(x,i),(y,j) = B[n-bit]
if (x,i) != arr[-1]:
heappushpop(arr,(x,i))
if (y,j) != arr[-1]:
heappushpop(arr,(y,j))
m -= bit
B.append(arr)
answer = [0]
for (x,i),(y,j) in B[1:]:
z = answer[-1]
if z < x + y:
z = x + y
answer.append(z)
print('\n'.join(map(str,answer[1:])))
提出情報
| 提出日時 | |
|---|---|
| 問題 | E - Or Plus Max |
| ユーザ | maspy |
| 言語 | PyPy3 (2.4.0) |
| 得点 | 700 |
| コード長 | 726 Byte |
| 結果 | AC |
| 実行時間 | 1092 ms |
| メモリ | 161692 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 700 / 700 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | sample_01.txt, sample_02.txt, sample_03.txt |
| All | sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt, subtask_1_18.txt, subtask_1_19.txt, subtask_1_20.txt, subtask_1_21.txt, subtask_1_22.txt, subtask_1_23.txt, subtask_1_24.txt, subtask_1_25.txt, subtask_1_26.txt, subtask_1_27.txt, subtask_1_28.txt, subtask_1_29.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| sample_01.txt | AC | 173 ms | 38384 KiB |
| sample_02.txt | AC | 174 ms | 38256 KiB |
| sample_03.txt | AC | 166 ms | 38256 KiB |
| subtask_1_01.txt | AC | 170 ms | 38256 KiB |
| subtask_1_02.txt | AC | 167 ms | 38256 KiB |
| subtask_1_03.txt | AC | 457 ms | 74472 KiB |
| subtask_1_04.txt | AC | 214 ms | 42728 KiB |
| subtask_1_05.txt | AC | 176 ms | 38256 KiB |
| subtask_1_06.txt | AC | 258 ms | 49752 KiB |
| subtask_1_07.txt | AC | 266 ms | 50780 KiB |
| subtask_1_08.txt | AC | 166 ms | 38256 KiB |
| subtask_1_09.txt | AC | 169 ms | 38256 KiB |
| subtask_1_10.txt | AC | 368 ms | 62808 KiB |
| subtask_1_11.txt | AC | 167 ms | 38256 KiB |
| subtask_1_12.txt | AC | 289 ms | 61432 KiB |
| subtask_1_13.txt | AC | 199 ms | 41452 KiB |
| subtask_1_14.txt | AC | 944 ms | 158620 KiB |
| subtask_1_15.txt | AC | 168 ms | 38256 KiB |
| subtask_1_16.txt | AC | 945 ms | 157980 KiB |
| subtask_1_17.txt | AC | 1092 ms | 139520 KiB |
| subtask_1_18.txt | AC | 760 ms | 129308 KiB |
| subtask_1_19.txt | AC | 791 ms | 152988 KiB |
| subtask_1_20.txt | AC | 775 ms | 155920 KiB |
| subtask_1_21.txt | AC | 883 ms | 156956 KiB |
| subtask_1_22.txt | AC | 945 ms | 161180 KiB |
| subtask_1_23.txt | AC | 848 ms | 156956 KiB |
| subtask_1_24.txt | AC | 1076 ms | 138752 KiB |
| subtask_1_25.txt | AC | 765 ms | 128884 KiB |
| subtask_1_26.txt | AC | 822 ms | 151836 KiB |
| subtask_1_27.txt | AC | 793 ms | 156432 KiB |
| subtask_1_28.txt | AC | 910 ms | 157084 KiB |
| subtask_1_29.txt | AC | 997 ms | 161692 KiB |