基礎班例題

小群體-2

時間限制 1000 ms · 記憶體限制 256 MB · C++

在一次聖誕節交換禮物活動中,有$N$ 位參加者(編號 $0 \sim N-1$)對應 $N$ 份禮物(編號 $0 \sim N-1$)。

[0號參加者準備0號禮物、1號參加者準備1號禮物、2號參加者準備2號禮物...依此類推]

請你找出追蹤的參加者的禮物被誰抽到,一直往下追蹤直到最後回到追蹤的參加者

例如下圖

小群體2.png

假設要追蹤編號0號的參加者,0號抽到2號的禮物(橘色箭頭),2號抽到3號的禮物...一路追蹤到4號抽到0號的禮物(黃色箭頭),形成一個環後停止

輸入說明

第一行輸入一個數字 $ N $ 代表有 $ N $ 位參加者

第二行會給一串數列 $ N_i $代表各自拿了誰所準備的禮物

第一個數字代表 0號參加者所拿到的禮物編號,第二個數字代表 1號參加者所拿到的禮物編號 ... 第 $N$ 個數字代表 $ N-1 $ 號參加者所拿到的禮物編號

第三行會輸入一個數字 $ P $ 代表要追蹤的參加者編號

  • $ 2 \le N \le 10^3 $
  • $ N_i $ 數字範圍為 $0 \sim N-1$,數字不重複
  • $ 0 \le P \le N-1 $

輸出說明

請從追蹤的參加者編號開始,輸出一個數列代表抽取禮物的人員順序,直到那個人抽到追蹤的參加者編號,數字間彼此應空一格

(追蹤的參加者編號應輸出在第一個,結尾不應輸出追蹤的參加者編號)

範例

範例輸入 1

5
2 4 3 1 0
0

範例輸出 1

0 2 3 1 4

範例輸入 2

3
2 1 0
1

範例輸出 2

1
C++77 / 50,000

「跑範例測資」只跑題目敘述上的範例,會顯示你的輸出與正確答案的對照; 「提交評測」會跑完整的測資並給實際結果,但不會顯示測資內容。兩者都不需要帳號,也不會留下成績紀錄。