페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#5839

일본 침몰 2 3초 1024MB

문제

일본 열도는 동서에 길쭉한 열도이다. 일본 열도는 남북 방향의 경계선에 따라 N 개의 구획으로 나뉘어져 있다. 구획에는 서쪽부터 순서대로 1에서 N까지의 번호가 붙여져 있다. 현재 구획 i (1≤i≤N)의 고도는 Aim입니다.

일본 열도에서는 종종 폭풍이 일어나고 있습니다. 폭풍이 일어나면 파도에 의한 침식으로 각 구획의 고도가 다음과 같이 감소한다.

힘 x의 서풍 폭풍에서는 서쪽에서 세어 x 개 이내의 구획 중, 「그보다 서쪽에 자신보다 고도가 높은 구획이 존재하지 않는다」와 같은 모든 구획의 고도가 1 m 감소한다. 즉, 폭풍 전의 구획 i의 표고를 ai로 나타내면, i≤x이고, 1≤k<i가 되는 모든 k에 대해 ak≤ai가 되는 경우에 구획 i의 표고는 1m 줄어들고, 그렇지 않으면 변하지 않습니다.

강도 x의 동풍 폭풍에서는 동쪽에서 세어 x 개 이내의 구획 중, 「그보다 동쪽에 자신보다 고도가 높은 구획이 존재하지 않는다」와 같은 모든 구획의 고도가 1 m 감소한다. 즉, 폭풍 전에 구획 i의 고도를 ai로 나타내면, i ≧ N - x + 1이고 i < k ≤ N 인 모든 k에 대해 ak ≤ ai 인 경우 구획 i의 고도는 1m 줄어들고 다른 경우에는 변하지 않습니다.

당신은 향후 Q 일의 사건을 시뮬레이션해야합니다. j 일째 (1 ≤ j ≤ Q)에는 다음과 같은 사건이 일어난다.

Tj = 1 일 때 강도 Xj의 서풍 폭풍이 발생합니다.

Tj = 2 일 때, 강도 Xj의 동풍 폭풍이 일어난다.

Tj = 3 일 때, 그 시점에서 구획 Xj의 고도를보고한다.

제약에 의해 어느 구획의 고도도 부가되지 않는 것이 보증된다.

현재 각 구획의 고도와 향후 Q 일간의 사건이 주어지므로 Tj = 3 인 날에 대해 지정된 구획의 고도를 구하는 프로그램을 작성하라.


입력

입력은 다음 형식으로 제공됩니다.

N Q

A1 A2 … AN

T1 X1

T2 X2

:

TQ XQ

[제한]

1 ≤ N ≤ 300 000.

1 ≤ Q ≤ 300 000.

Q≤Ai≤109 (1≤i≤N).

1 ≤ Tj ≤ 3 (1 ≤ j ≤ Q).

1 ≤ Xj ≤ N (1 ≤ j ≤ Q).

입력 된 모든 값은 정수입니다.


출력

Tj = 3 인 j (1 ≤ j ≤ Q) 각각에 대해, j 일째 시점에서의 구획 Xj의 고도 (m)를 나타내는 정수를 1 행씩 순서대로 출력하라.


부분문제

번호 점수 조건
#15점

N ≦ 2 000Q ≦ 2 000

#227점

Tj ≠ 3이면 Xj = N (1 ≤ j ≤ Q).

#328점

A1 = A2 = … = AN = Q

#420점

Tj ≠ 2 (1 ≦ j ≦ Q).

#520점

추가 제한 없음


출처

JOI 2023 예선2

역링크