Submit solution
Points:
0.50 (partial)
Time limit:
1.0s
Memory limit:
256M
Input:
stdin
Output:
stdout
Suggester:
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Cho một đồ thị vô hướng có ~n~ đỉnh, đỉnh thứ ~i~ có màu ~a_i~. Ban đầu đồ thị chưa có cạnh nào.
Cho ~q~ truy vấn, mỗi truy vấn thuộc một trong hai dạng sau:
- ~1\ u\ v~: Thêm một cạnh nối giữa ~u~ và ~v~.
- ~2\ u\ c~: Tính số đỉnh có màu ~c~ trong thành phần liên thông chứa ~u~.
Input format
Dòng đầu tiên chứa hai số nguyên dương ~n~ và ~q~ (~n\le 100000~; ~q \le 200000~).
Dòng tiếp theo chứa ~n~ số nguyên dương ~a_1, a_2, \ldots, a_n~ (~a_i \le n~).
~q~ dòng cuối cùng, mỗi dòng gồm ba số nguyên dương, số nguyên đầu tiên là loại của truy vấn (~1~ hoặc ~2~), hai số nguyên còn lại không vượt quá ~n~.
Output format
Với mỗi truy vấn loại ~2~, in ra trên một dòng kết quả của truy vấn đó.
Sample
Input
5 7
2 4 2 3 2
1 1 2
2 1 2
1 3 5
2 2 1
1 1 3
2 3 2
2 4 3
Output
1
0
3
1
Comments
This comment is hidden due to too much negative feedback. Show it anyway.
This comment is hidden due to too much negative feedback. Show it anyway.