import sys

class FenwickTree:

  def __init__(self, n):
    self.ft = [ 0 for _ in range(n + 1) ]

  def size(self):
    return len(self.ft) - 1

  # 0 indexed

  def sumTo(self, i):
    return self.sumTo1(i + 1)

  def sumAll(self):
    return self.sumTo1(self.size())

  def sumRange(self, i, j):
    return self.sumRange1(i + 1, j + 1)

  def add(self, i, v):
    self.add1(i + 1, v)

  def set(self, i, v):
    tmp = self.sumRange(i, i)
    self.add(i, v - tmp)
  
  # 1 indexed

  def sumTo1(self, i):
    s = 0
    while i > 0:
      s += self.ft[i]
      i -= (i & -i)
    return s

  def sumRange1(self, i, j):
    s = self.sumTo1(j)
    if i > 1: s -= self.sumTo1(i - 1)
    return s

  def add1(self, i, v):
    while i < len(self.ft):
      self.ft[i] += v
      i += (i & -i)


def middle():
  lo = 0
  hi = T.size() - 1
  while lo < hi:
    mi = (lo + hi) >> 1
    if f(mi) <= f(mi + 1):
      hi = mi
    else:
      lo = mi + 1
  return lo

def f(i):
  left = T.sumTo(i) - a[i]
  right = T.sumAll() - left - a[i]
  if a[i] % 2 == 1:
    if left <= right: left += 1
    else: right += 1
  return abs(left - right)

if __name__ == '__main__':
  lines = [ line for line in sys.stdin ]
  data = lines[0].split(' ')
  n = int(data[0])
  q = int(data[1])
  T = FenwickTree(n)
  a = [ int(x) for x in lines[1].split(' ') ]
  for i in range(n):
    T.set(i, a[i])
  for i in range(q):
    data = lines[i + 2].split(' ')
    j = int(data[0])
    x = int(data[1])
    a[j] = x
    T.set(j, x)
    ans = middle()
    print(ans)
