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

#1844

기합 3초 1024MB

문제

정올 학생들은 모의고사를 풀어야 할 시간에 리그 오브 레전드(속칭 롤)를 한다.

이런 학생들이 눈에 거슬린 정올샘은 학생들을 운동장에 불러 모아 단체기합을 실시하려고 한다.

먼저 N명의 학생들을 1~N번으로 번호를 매긴 후 왼쪽에서 오른쪽으로 줄을 선다. 

그 후, 정올샘은 아래 두 명령 중 한 명령을 지시한다.

 

1 X Y : 왼쪽으로부터 X번째에 위치한 학생과 왼쪽으로부터 Y번째에 위치한 학생의 위치를 서로 바꾸어라.

2 A B : 번호가 A 이상 B 이하인 학생들이 서로 이웃해 있는지 대답하여라.

 

하지만 학생들은 롤만 하느라 머리가 퇴화되어 2번째 명령에 대해 제대로 대답하지 못 했다.

당신은 정올샘이 할 명령이 무엇인지 알고 있으므로, 예상 대답을 구해서 학생들에게 알려주자.


입력

첫 번째 줄에는 학생 수 N과 명령의 수 M이 주어진다. 

두 번째 줄에는 줄에 서 있는 학생의 번호가 왼쪽에서부터 주어진다.

세 번째 줄부터 M개의 줄에는 정올샘의 명령이 주어지는데, "1 X Y" 또는 "2 A B" 중 하나이다. 

 

[제약조건]

* 2 ≤ N, M ≤ 200,000 

* 1 ≤ X, Y ≤ N, X ≠ Y 

* 1 ≤ A ≤ B ≤ N


출력

"2 A B" 명령에 대하여 한 줄에 하나씩 번호가 A 이상 B 이하인 학생들이 서로 이웃해 있으면 "YES"를 아니면 “NO"를 출력한다.


예제1

입력
5 3 

2 4 1 3 5
2 2 5
1 3 1
2 2 5
출력
NO

YES

예제2

입력
7 7

4 7 3 5 1 2 6
2 1 7
1 3 7
2 4 6
2 4 7
2 1 4
1 1 4
2 1 4
출력
YES

NO
YES
NO
YES

태그


출처

COCI 2012/2013 task 3 Snjeguljica

역링크 공식 문제집만