Có \(n\) học sinh nghịch ngợm đánh số \(1..n\). Khi giáo viên bắt được học sinh \(i\), em đó sẽ khai ra học sinh \(p_i\) là người chủ mưu. Giáo viên lập tức chuyển sang hỏi học sinh \(p_i\), em này lại khai ra \(p_{p_i}\), và cứ thế tiếp tục. Mỗi lần hỏi một học sinh, giáo viên đục một lỗ trên huy hiệu của em đó. Quy trình dừng ngay khi có một học sinh bị đục lỗ lần thứ hai; học sinh này bị phạt.
Với mỗi \(i\) từ \(1\) đến \(n\), hãy cho biết học sinh nào bị phạt nếu người bị bắt đầu tiên là \(i\).
Input
- Dòng 1: số nguyên \(n\).
- Dòng 2: \(n\) số nguyên \(p_1, p_2, \dots, p_n\).
Output
- In ra \(n\) số nguyên cách nhau dấu cách; số thứ \(i\) là học sinh bị phạt khi người bị bắt đầu tiên là \(i\).
Constraints
- \(1 \le n \le 1000\).
- \(1 \le p_i \le n\) (\(p_i = i\) được phép: học sinh tự khai chính mình).
Sample Input
5
2 3 1 3 5
Sample Output
1 2 3 3 5
Explanation
Bắt đầu từ \(1\): đi qua \(1 \to 2 \to 3 \to 1\), học sinh \(1\) bị đục lỗ hai lần. Bắt đầu từ \(4\): \(4 \to 3 \to 1 \to 2 \to 3\), học sinh \(3\) bị phạt. Học sinh \(5\) tự khai chính mình nên bị phạt ngay.
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.