#P2270. How Many Friends Will Be Together With You

How Many Friends Will Be Together With You

Problem Description

One day dandelion and her friends decides to play outside. As there are so many people , they decide to divide into several parts . Dandelion wants to know how many friends will be together with her. The way they use to divide is : everyone can choose one people to join in her group, Such as if A chooses B to join in her group , then B will leave the group she is in now , and joins in the group that A is in . One can also choose some people who has already in her group. All of dandelion抯 friends are expressed as an integer 2,3... n and dandelion is expressed as 1.The choosing work begins from dandelion then the friend who are signed as 2 ?until the friend who are signed as n .

Input

Each case begins with an integer n, (0<n<=1000000) stands for the number of people.
Then follows n lines , the i+1 line contains an integer p, stands for people who are signed as i chooses the one who are signed as p to join in her group.

Output

The output contains one line for each data set : the number of friends will be together with dandelion at last .

3 3 3 1 3 2 1 2
2 0

Hint


Hint
For the second case , the group is (1)(2)(3) at first , then (1,2)(3) after dandelion抯 picking , then ( 1 , 2 ) ( 3) , then (1) (2 ,3). So at last , no other people is together with dandelion.

Author

dandelion