結果

問題 No.451 575
ユーザー _____TAB__________TAB_____
提出日時 2016-12-02 12:51:21
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 476 ms / 2,000 ms
コード長 812 bytes
コンパイル時間 370 ms
コンパイル使用メモリ 12,800 KB
実行使用メモリ 20,004 KB
最終ジャッジ日時 2024-12-16 11:00:24
合計ジャッジ時間 7,584 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 29
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

n = int(input())
b = []
f = 0
a_01 = []
a_23 = [1]
m_01 = 10**19
m_23 = 1
for i in range(n):
b.append(int(input()))
if f <= 1:
if f == 0:
if b[i] == 1:
print(-1)
exit()
ai = b[i] - a_23[-1]
else:
ai = a_01[-1] - b[i]
a_01.append(ai)
m_01 = min(m_01, ai)
else:
if f == 2:
ai = b[i] - a_01[-1]
if b[i] == 1:
print(-1)
exit()
else:
ai = a_23[-1] - b[i]
a_23.append(ai)
m_23 = min(m_23, ai)
f = (f + 1) % 4
#print(a_01)
#print(a_23)
#print(m_01,m_23)
if m_23 + m_01 <= 1:
print(-1)
exit()
else:
f = 3
a_01.reverse()
a_23.reverse()
print(n+1)
if m_01 > 0 and m_23 > 0:
m = 0
elif m_01 < m_23:
m = -m_01 + 1
else:
m = m_23 - 1
for i in range(n + 1):
if f <= 1:
a = a_01.pop() + m
else:
a = a_23.pop() - m
f = (f + 1) % 4
print(a)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0