output_description: Print the maximum possible sum of the chosen elements.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
      A_1 ... A_N
attempt: n = int(input())
  a = list(map(int, input().split()))
  if n % 2 == 0:
      a.append(-float("inf"))
      n += 1
  if n == 3:
      print(max(a))
      exit()
  p0 = a[0]
  z0 = -float("inf")
  z1 = a[1]
  y0 = a[0] + a[2]
  y1 = -float("inf")
  y2 = a[2]
  x0 = -float("inf")
  x1 = max(p0, z1) + a[3]
  x2 = -float("inf")
  for i in range(4, n - 1):
      w0 = y0 + a[i]
      w1 = max(y1, z0) + a[i]
      w2 = max(y2, z1, p0) + a[i]
      p0 = z0
      z0 = y0
      z1 = y1
      y0 = x0
      y1 = x1
      y2 = x2
      x0 = w0
      x1 = w1
      x2 = w2
  w0 = y0 + a[n - 1]
  w1 = max(y1, z0) + a[n - 1]
  w2 = max(y2, z1, p0) + a[n - 1]
  print(max(y0, x1, w2))
  
problem_description: Statement
  
  Given is an integer sequence A_1, ..., A_N of length N.
  
  We will choose exactly \left\lfloor \frac{N}{2} \right\rfloor elements from
  this sequence so that no two adjacent elements are chosen.
  
  Find the maximum possible sum of the chosen elements.
  
  Here \lfloor x \rfloor denotes the greatest integer not greater than x.
samples: [{"input": "6\n    1 2 3 4 5 6", "output": "12\n    \n\nChoosing 2, 4, and 6 makes the sum 12, which is the maximum possible value.\n\n* * *"}, {"input": "5\n    -1000 -100 -10 0 10", "output": "0\n    \n\nChoosing -10 and 10 makes the sum 0, which is the maximum possible value.\n\n* * *"}, {"input": "10\n    1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000 1000000000", "output": "5000000000\n    \n\nWatch out for overflow.\n\n* * *"}, {"input": "27\n    18 -28 18 28 -45 90 -45 23 -53 60 28 -74 -71 35 -26 -62 49 -77 57 24 -70 -93 69 -99 59 57 -49", "output": "295"}]