結果

問題 No.2854 -1 Subsequence
ユーザー はるるん
提出日時 2024-08-25 14:36:32
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 133 ms / 2,000 ms
コード長 396 bytes
コンパイル時間 214 ms
コンパイル使用メモリ 82,464 KB
実行使用メモリ 106,296 KB
最終ジャッジ日時 2024-08-25 14:36:37
合計ジャッジ時間 5,239 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 40
権限があれば一括ダウンロードができます

ソースコード

diff #

n = int(input())
a = list(map(int,input().split()))

dp = [[-1<<60,-1<<60] for i in range(n+1)]
dp[0][1] = 0

for i in range(n):
	dp[i+1][1] = max(dp[i][1],dp[i][0]+a[i])
	dp[i+1][0] = max(dp[i][0],dp[i][1]-a[i])

pre = 1<<60
flag = False
for i in range(n):
	if pre >= a[i]:
		pre = a[i]
	else:
		flag = True
		break

if pre <= 0:
	flag = True


if flag:
	print(max(dp[-1]))
else:
	print(-min(a))
0