#AT2502. B - Call the ID Number

B - Call the ID Number

当前没有测试数据。

B - Call the ID Number

Score : $200$ points

Problem Statement

There are $N$ people whose IDs are $1$, $2$, $\ldots$, and $N$.

Each of person $1$, person $2$, $\ldots$, and person $N$ performs the following action once in this order:

  • If person $i$'s ID has not been called out yet, call out person $A_i$'s ID.

Enumerate the IDs of all the people whose IDs are never called out until the end in ascending order.

Constraints

  • $2 \leq N \leq 2 \times 10^5$
  • $1 \leq A_i \leq N$
  • $A_i \neq i$
  • All values in the input are integers.

Input

The input is given from Standard Input in the following format:

NN

A1A_1 A2A_2 \ldots ANA_N

Output

Enumerate the IDs of all the people whose IDs are not called out until the end in ascending order in the following format:

``` $K$ $X_1$ $X_2$ $\ldots$ $X_K$ ```

In other words, the first line should contain the number of people, $K$, whose IDs are never called out until the end; the second line should contain the sequence $(X_1, X_2, \ldots, X_K)$ of IDs of such people in ascending order, with spaces in between.


5
3 1 4 5 4
2
2 4

The five people's actions are as follows.

  • Person $1$'s ID has not been called out yet, so person $1$ calls out person $3$'s ID.
  • Person $2$'s ID has not been called out yet, so person $2$ calls out person $1$'s ID.
  • Person $3$'s ID has already been called out by person $1$, so nothing happens.
  • Person $4$'s ID has not been called out yet, so person $4$ calls out person $5$'s ID.
  • Person $5$'s ID has already been called out by person $4$, so nothing happens.

Therefore, person $2$ and $4$'s IDs are not called out until the end.


20
9 7 19 7 10 4 13 9 4 8 10 15 16 3 18 19 12 13 2 12
10
1 2 5 6 8 11 14 17 18 20