Cho kẹo hay bị phá nào

Xem dạng PDF

Gửi bài giải


Điểm: 0,23 (OI)
Giới hạn thời gian: 0.38s
Giới hạn bộ nhớ: 512M
Input: stdin
Output: stdout

Nguồn bài:
USACO December 2008 - Gold Division
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Hằng năm ở Wisconsin tụi bò lại tổ chức ngày hội Halloween vào kỳ nghỉ Thu. Chúng sẽ mặc đồ hóa trang và đi xin kẹo nông dân John đã đặt trong ~N~ ~(1 \le N \le 100000)~ chuồng bò (để thuận tiện ta đánh số các chuồng bò từ ~1 \rightarrow N~).

Để cho lũ bò chơi vui hơn, ở chuồng ~i~ John sẽ cắm ~1~ biển báo ~next_i~ ~(1 \le next_i \le N)~ cho biết sau khi xin kẹo ở chuồng ~i~ thì bò sẽ phải tiếp tục đi tới chuồng ~next_i~ để xin kẹo tiếp.

Bò ~i~ sẽ bắt đầu xin kẹo từ chuồng ~i~. Và một con bò sẽ dừng việc xin kẹo nếu nó đi tới ~1~ chuồng mà nó đã từng đi qua rồi.

Tính xem mỗi con bò sẽ xin được bao nhiêu kẹo, biết rằng ở mỗi chuồng chúng chỉ xin được ~1~ viên kẹo mà thôi.

Input

  • Dòng ~1~: Một số nguyên duy nhất: ~N~
  • Dòng ~2~ ...~N + 1~: Dòng ~i + 1~ gồm ~1~ số nguyên duy nhất: ~next_i~

Output

  • Dòng ~1~ ...~N~: Dòng ~i~ chứa ~1~ số nguyên là số kẹo mà bò ~i~ nhận được

Sample Input

4
1
3
2
3

Sample Output

1
2
2
3

Bình luận

Hãy đọc nội quy trước khi bình luận.



  • -17
    Nbk_Fucs  đã bình luận lúc 6, Tháng 8, 2022, 10:43

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.


  • -23
    anhpha  đã bình luận lúc 15, Tháng 9, 2021, 11:15 chỉnh sửa

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.