fork download
  1. import sys
  2. input = sys.stdin.readline
  3.  
  4. N = int(input())
  5. A = list(map(int, input().split()))
  6.  
  7. bestB = -10**30
  8. bestC = -10**30
  9. curB = 0
  10. curC = 0
  11.  
  12. for i, a in enumerate(A, start=1):
  13. # 변환 1: 홀수 +, 짝수 -
  14. Bi = a if i % 2 == 1 else -a
  15. curB = max(Bi, curB + Bi)
  16. bestB = max(bestB, curB)
  17.  
  18. # 변환 2: 홀수 -, 짝수 +
  19. Ci = -a if i % 2 == 1 else a
  20. curC = max(Ci, curC + Ci)
  21. bestC = max(bestC, curC)
  22.  
  23. print(max(bestB, bestC))
Success #stdin #stdout 0.13s 14076KB
stdin
5
-1 2 -4 -2 3
stdout
7