[BOJ 16912] 트리와 쿼리 12
View as PDF
Submit solution
Points:
5
Time limit:
2.0s
Memory limit:
512M
Problem types
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text
N개의 정점으로 이루어진 루트없는 트리의 포레스트 F가 있다. 가장 처음에 F에 속하는 모든 트리는 정점 하나로만 이루어져 있는 트리이다. 아래와 같은 쿼리를 수행해보자.</p>
- 1 A B: 정점 A와 B를 연결하는 간선을 추가한다. 쿼리가 주어지기 전에 A와 B사이에는 간선이 없다.
- 2 A B: 정점 A와 B를 연결하는 간선을 제거한다. 쿼리가 주어지기 전에 A와 B사이에는 간선이 있다.
- 3 A B: 정점 A에서 B로 가는 경로가 있는지 없는지 조사한다. 있는 경우에는 1, 없는 경우에는 0을 출력한다.
모든 A와 B는 1 ≤ A, B ≤ N, A ≠ B를 만족하고, 모든 간선은 방향이 없다.
입력 형식
첫째 줄에 정점의 개수 N(2 ≤ N ≤ 100,000)과 쿼리의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 둘째 줄부터 M개의 줄에 쿼리가 한 줄에 하나씩 주어진다. 쿼리의 수행 결과가 포레스트인 입력만 주어진다.
출력 형식
3번 쿼리의 결과를 한 줄에 하나씩 출력한다.
예제 입력
5 11
3 1 5
1 1 2
1 1 3
1 3 4
1 5 4
3 1 5
2 4 5
3 1 5
2 3 4
1 3 5
3 1 5
예제 출력
0
1
0
1
Comments