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

#5064

간단한 쿼리 문제 3s 512MB

문제

각 원소가 [1, K] 범위에 있는 길이 N의 수열 A가 주어진다.

 

M개의 쿼리가 주어진다.

1번 쿼리는 Ap를 v로 바꾸는 쿼리이다.

2번 쿼리는 1부터 K까지의 모든 수를 포함하는 최소 길이의 연속된 부분수열을 구하여 출력하는 쿼리이다.​ 


입력

첫 번째 줄에 N, K, M이 공백으로 구분되어 주어진다.

두 번째 줄에는 A1, A2, ..., AN이 공백으로 구분되어 주어진다.

세 번째 줄부터 M개의 줄에 걸쳐, 각 쿼리가 주어진다.

 

1번 쿼리는 "1 p v"의 형태이다.

2번 쿼리는 "2"의 형태이다.

 

1 <= N, M <= 100 000

1 <= K <= 50

 

1 <= p <= N

1 <= v <= K


출력

2번 쿼리가 들어올 때 마다 쿼리의 정답을 구하여 각 줄에 출력하여라.

만약 조건을 만족하는 연속된 부분수열이 존재하지 않는다면, -1을 대신 출력하여라.


예제 #1

4 3 5

2 3 1 2
2
1 3 3
2
1 1 1
2
3

-1
4

예제 #2

6 3 6

1 2 3 2 1 1
2
1 2 1
2
1 4 1
1 6 2
2
3

3
4
로그인해야 코드를 작성할 수 있어요.