10066 유니온 파인드 Gold V

시간 제한: 2초 메모리 제한: 256MB

문제

N개의 원소로 이루어진 집합이 있다. 합집합 연산과 같은 집합에 속하는지 확인하는 연산을 처리하는 프로그램을 작성하시오.

명령:

  • 0 a b: a가 포함된 집합과 b가 포함된 집합을 합친다.
  • 1 a b: a와 b가 같은 집합에 포함되어 있는지 확인한다.

입력

첫째 줄에 원소의 개수 N (1 ≤ N ≤ 1,000,000)과 연산의 개수 M (1 ≤ M ≤ 100,000)이 주어진다. 다음 M개의 줄에 연산이 주어진다.

출력

1 연산에 대해 같은 집합이면 YES, 아니면 NO를 출력한다.

예제 입출력

예제 입력 1
7 8
0 1 3
1 1 7
0 7 6
1 7 1
0 3 7
0 4 2
0 1 1
1 1 1
예제 출력 1
NO
NO
YES
solution.cpp
에디터 불러오는 중...