SOJ ONLINE JUDGE

k번째 공 찾기

난이도: Platinum V 출제자: rlatjwls7882 시간 제한: 1000 ms 메모리 제한: 512 MB
이분 탐색세그먼트 트리

$1$번부터 $N$번까지 번호가 붙은 상자가 있다.

$i$번 상자에는 처음에 $A_i$개의 공이 들어 있다.

$Q$개의 쿼리를 순서대로 처리하라.

쿼리는 다음 중 하나이다.

  • 1 i x: $i$번 상자에 공 $x$개를 추가한다. $(1 \leq i \leq N,\ 1 \leq x \leq 10^9)$
  • 2 k: $1$번 상자부터 $N$번 상자까지 순서대로 공을 나열했을 때 $k$번째 공이 들어 있는 상자의 번호를 출력한다. $(1 \leq k \leq S)$

여기서 $S$는 쿼리를 처리하기 전 모든 상자에 들어 있는 공의 개수의 합이다.

입력

첫 번째 줄에 상자의 개수 $N$과 쿼리의 개수 $Q$가 주어진다. $(1 \leq N,Q \leq 10^6)$

두 번째 줄에 각 상자에 들어 있는 공의 개수 $A_1,A_2,\ldots,A_N$이 주어진다. $(0 \leq A_i \leq 10^9)$

세 번째 줄부터 $Q$개의 줄에 걸쳐 쿼리가 하나씩 주어진다.

출력

2 k 쿼리마다 $k$번째 공이 들어 있는 상자의 번호를 한 줄에 하나씩 출력한다.

예제 입력 1

5 7
2 0 3 1 4
2 1
2 3
1 2 5
2 3
2 7
1 5 1
2 15

예제 출력 1

1
3
2
2
5

제출