提出 #13755560
ソースコード 拡げる
# import sys
# readline = sys.stdin.readline
# generator = (readline().strip() for _ in range(N))
# N, M = map(int, input().split())
# As = list(map(int, input().split()))
# queries = (input() for _ in range(N))
def solve():
N = int(input())
As = list(map(int, input().split()))
if N > 0 and As[0] != 0:
return -1
if N == 0 and As[0] != 1:
return -1
vertices = [1] * (N+1)
previous = 0
for i, a in enumerate(As[:0:-1]):
max_n_vert = a + previous
previous = max_n_vert
vertices[N-i] = max_n_vert
n_not_leaves_prev = 1
for i, a in enumerate(As):
if i == 0:
continue
# if n_not_leaves_prev == 0:
# return -1
max_n_vert = 2 * n_not_leaves_prev
vertices[i] = min(vertices[i], max_n_vert)
n_not_leaves_prev = vertices[i] - a
if max_n_vert < a:
return -1
return sum(vertices)
def main():
print(solve())
if __name__ == "__main__":
main()
提出情報
| 提出日時 | |
|---|---|
| 問題 | C - Folia |
| ユーザ | toshi919 |
| 言語 | Python (3.8.2) |
| 得点 | 600 |
| コード長 | 1071 Byte |
| 結果 | AC |
| 実行時間 | 86 ms |
| メモリ | 20008 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 600 / 600 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | s1.txt, s2.txt, s3.txt, s4.txt, s5.txt |
| All | 0.txt, 1.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 2.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 3.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 4.txt, 5.txt, 6.txt, 7.txt, 8.txt, 9.txt, s1.txt, s2.txt, s3.txt, s4.txt, s5.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 0.txt | AC | 49 ms | 11856 KiB |
| 1.txt | AC | 43 ms | 11420 KiB |
| 10.txt | AC | 29 ms | 9900 KiB |
| 11.txt | AC | 52 ms | 12420 KiB |
| 12.txt | AC | 33 ms | 10212 KiB |
| 13.txt | AC | 45 ms | 11704 KiB |
| 14.txt | AC | 63 ms | 13324 KiB |
| 15.txt | AC | 86 ms | 19872 KiB |
| 16.txt | AC | 83 ms | 19800 KiB |
| 17.txt | AC | 85 ms | 19772 KiB |
| 18.txt | AC | 84 ms | 19808 KiB |
| 19.txt | AC | 84 ms | 20004 KiB |
| 2.txt | AC | 33 ms | 10232 KiB |
| 20.txt | AC | 85 ms | 19804 KiB |
| 21.txt | AC | 83 ms | 20008 KiB |
| 22.txt | AC | 80 ms | 19800 KiB |
| 23.txt | AC | 42 ms | 14992 KiB |
| 24.txt | AC | 42 ms | 17048 KiB |
| 25.txt | AC | 35 ms | 13308 KiB |
| 26.txt | AC | 21 ms | 9948 KiB |
| 27.txt | AC | 34 ms | 13332 KiB |
| 28.txt | AC | 53 ms | 19376 KiB |
| 29.txt | AC | 54 ms | 18704 KiB |
| 3.txt | AC | 18 ms | 8984 KiB |
| 30.txt | AC | 21 ms | 8972 KiB |
| 31.txt | AC | 17 ms | 8872 KiB |
| 32.txt | AC | 20 ms | 8944 KiB |
| 33.txt | AC | 17 ms | 9012 KiB |
| 34.txt | AC | 24 ms | 9420 KiB |
| 35.txt | AC | 35 ms | 10632 KiB |
| 4.txt | AC | 33 ms | 10116 KiB |
| 5.txt | AC | 33 ms | 10404 KiB |
| 6.txt | AC | 33 ms | 10260 KiB |
| 7.txt | AC | 51 ms | 12244 KiB |
| 8.txt | AC | 24 ms | 9312 KiB |
| 9.txt | AC | 47 ms | 11876 KiB |
| s1.txt | AC | 19 ms | 8892 KiB |
| s2.txt | AC | 19 ms | 8996 KiB |
| s3.txt | AC | 17 ms | 9000 KiB |
| s4.txt | AC | 20 ms | 8976 KiB |
| s5.txt | AC | 22 ms | 8884 KiB |