output_description: Print N lines. In i-th line print the answer to the question when k = i.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
      x_1 y_1
      x_2 y_2
      :
      x_N y_N
attempt: n = int(input())
  towns = [0] * n
  nw = []
  nw_points = []
  xmax = 0
  xmin = 200001
  ymax = 0
  ymin = 200001
  for i in range(n):
      x, y = map(int, input().split())
      if (xmax < x and ymin > y) or (xmin > x and ymax < y):
          # botti
          towns[i] = len(nw)
          nw.append(1)  # node count
          nw_points.append((x, x, y, y))  # xmax, xmin, ymax, ymin
      else:
          # not botti
          # search
          for j, p in enumerate(nw_points):
              if (p[0] < x and p[3] > y) or (p[1] > x and p[2] < y):
                  # notjoin
                  pass
              else:
                  # join
                  towns[i] = j
                  nw[j] += 1
                  nw_points[j] = (max(p[0], x), min(p[1], x), max(p[2], y), min(p[3], y))
  
      xmax = max(xmax, x)
      xmin = min(xmin, x)
      ymax = max(ymax, y)
      ymin = min(ymin, y)
  
  for t in towns:
      print(nw[t])
  
problem_description: Statement
  
  There are N cities on a 2D plane. The coordinate of the i-th city is (x_i,
  y_i). Here (x_1, x_2, \dots, x_N) and (y_1, y_2, \dots, y_N) are both
  permuations of (1, 2, \dots, N).
  
  For each k = 1,2,\dots,N, find the answer to the following question:
  
  Rng is in City k. Rng can perform the following move arbitrarily many times:
  
    * move to another city that has a smaller x-coordinate and a smaller y-coordinate, or a larger x-coordinate and a larger y-coordinate, than the city he is currently in.
  
  How many cities (including City k) are reachable from City k?
samples: [{"input": "4\n    1 4\n    2 3\n    3 1\n    4 2", "output": "1\n    1\n    2\n    2\n    \n\nRng can reach City 4 from City 3, or conversely City 3 from City 4.\n\n* * *"}, {"input": "7\n    6 4\n    4 3\n    3 5\n    7 1\n    2 7\n    5 2\n    1 6", "output": "3\n    3\n    1\n    1\n    2\n    3\n    2"}]