Trong một buổi đổi chỗ ngồi, sinh viên i chuyển đến vị trí ai. Mảng a là một hoán vị của 0,1,…,n−1. Hãy phân rã hoán vị thành các chu trình: bắt đầu từ chỉ số chưa thăm nhỏ nhất, đi theo i→ai→aai→… cho đến khi quay lại.
Ví dụ: a=[1,2,0,4,3] ⇒ chu trình 1: 0 1 2 (vì 0→1→2→0); chu trình 2: 3 4 (vì 3→4→3). Tổng số chu trình =2.
1≤n≤1000; a là hoán vị của 0..n−1.
Mỗi chu trình in trên một dòng (các chỉ số theo thứ tự đi, cách nhau dấu cách). Cuối cùng in tổng số chu trình trên một dòng riêng.
Ví dụ:
Đầu vào:
5
1 2 0 4 3
Đầu ra:
0 1 2
3 4
2
Giải thích:
Đang tải editor...