結果

問題 No.451 575
ユーザー _____TAB_____
提出日時 2016-12-02 12:41:16
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 809 bytes
コンパイル時間 286 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 20,124 KB
最終ジャッジ日時 2024-12-16 10:21:04
合計ジャッジ時間 8,094 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 28 WA * 1
権限があれば一括ダウンロードができます

ソースコード

diff #

n  = int(input())
b = []
f = 0
a_01 = []
a_23 = [1]
m_01 = 10**18
m_23 = 10**18

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)
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)
0