10619: 洛谷P2921 - [USACO08DEC] Trick or Treat on the Farm G
Description
Because the barn is not so large, FJ makes sure the cows extend their fun by specifying a traversal route the cows must follow. To implement this scheme for traveling back and forth through the barn, FJ has posted a 'next stall number' next\_i (1 <= next\_i <= N) on stall i that tells the cows which stall to visit next; the cows thus might travel the length of the barn many times in order to collect their candy.
FJ mandates that cow i should start collecting candy at stall i. A cow stops her candy collection if she arrives back at any stall she has already visited.
Calculate the number of unique stalls each cow visits before being forced to stop her candy collection.
Input
第 $2$ 至 $n+1$ 行,每行包含一个整数 $next_i$,表示 $i$ 号隔间的下一个隔间。
Output
Sample 1 Input
4
1
3
2
3
Sample 1 Output
1
2
2
3
Four stalls.
* Stall 1 directs the cow back to stall 1.
* Stall 2 directs the cow to stall 3
* Stall 3 directs the cow to stall 2
* Stall 4 directs the cow to stall 3
Cow 1: Start at 1, next is 1. Total stalls visited: 1.
Cow 2: Start at 2, next is 3, next is 2. Total stalls visited: 2. Cow 3: Start at 3, next is 2, next is 3. Total stalls visited: 2. Cow 4: Start at 4, next is 3, next is 2, next is 3. Total stalls visited: 3.
有 $4$ 个隔间。
- 隔间 $1$ 要求牛到隔间 $1$,
- 隔间 $2$ 要求牛到隔间 $3$,
- 隔间 $3$ 要求牛到隔间 $2$,
- 隔间 $4$ 要求牛到隔间 $3$。
牛 $1$:从 $1\rightarrow 1$,总共访问 $1$ 个隔间;
牛 $2$:$2\rightarrow 3\rightarrow 2$,总共访问 $2$ 个隔间;
牛 $3$:$3\rightarrow 2\rightarrow 3$,总共访问 $2$ 个隔间;
牛 $4$:$4\rightarrow 3\rightarrow 2\rightarrow 3$,总共访问 $3$ 个隔间。