Gộp Tháp
Đề bài
Mô tả
Bạn có chiếc đĩa, đĩa thứ có bán kính . Ban đầu các đĩa này được chia vào tháp: mỗi tháp chứa ít nhất một đĩa, và các đĩa trong mỗi tháp được xếp theo thứ tự bán kính giảm dần từ dưới lên trên.
Bạn muốn gộp tất cả các đĩa lại thành một tháp duy nhất. Để làm điều đó, bạn có thể chọn hai tháp khác nhau và (mỗi tháp chứa ít nhất một đĩa), lấy một số (có thể là tất cả) đĩa trên cùng của tháp và đặt lên trên tháp theo đúng thứ tự, với điều kiện đĩa trên cùng của tháp phải lớn hơn tất cả các đĩa được di chuyển. Bạn có thể thực hiện thao tác này bao nhiêu lần tùy ý.
Gọi độ khó của một tập các tháp là số thao tác tối thiểu cần thực hiện để gộp tất cả các đĩa lại thành một tháp duy nhất.
Bạn được cho truy vấn. Mỗi truy vấn gồm hai số và , nghĩa là "gộp tháp và tháp " (lấy tất cả đĩa của hai tháp này và tạo thành một tháp mới chứa tất cả chúng, xếp theo thứ tự bán kính giảm dần từ trên xuống dưới). Tháp kết quả nhận chỉ số .
Với mỗi , hãy tính độ khó của tập các tháp sau khi thực hiện truy vấn đầu tiên.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và — số đĩa và số tháp.
- Dòng thứ hai chứa số nguyên , trong đó là chỉ số tháp mà đĩa thuộc về. Mỗi giá trị từ đến xuất hiện ít nhất một lần.
- dòng tiếp theo, mỗi dòng chứa hai số nguyên và mô tả một truy vấn. Các giá trị được chọn sao cho hai tháp này tồn tại trước truy vấn thứ .
Dữ liệu ra
In ra số nguyên. Số thứ (đánh chỉ số từ ) là độ khó của tập các tháp sau khi thực hiện truy vấn đầu tiên.
Ràng buộc
- , mỗi giá trị từ đến xuất hiện ít nhất một lần.
- , .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 7 4 1 2 3 3 1 4 3 3 1 2 3 2 4 |
5 4 2 0 |
Các tháp ban đầu: , độ khó . Sau truy vấn 1: , độ khó . Sau truy vấn 2: , độ khó . Sau truy vấn 3: chỉ còn một tháp, độ khó . |
| 2 2 1 2 2 1 |
1 0 |
Ban đầu hai đĩa ở hai tháp, cần thao tác. Sau khi gộp còn một tháp, độ khó . |
Bình luận