1549 - 【USACO】relay

通过次数

10

提交次数

31

时间限制 : 1 秒
内存限制 : 128 MB

Farmer John 有 N1 \le N \le 1000 )头奶牛,标号为 1 \dots N 。奶牛们使用一种基于锡罐和细绳的老式交流机制,并且弄清楚如何在 Farmer John 注意不到的情况下进行彼此之间的交流。

每头奶牛将消息传递给至多一头其他奶牛:对于奶牛 iF_i 表示奶牛 i 会将她接收到的消息传递给奶牛 F_iF_i 的值一定与 i 不同)。如果 F_i = 0 ,那么意味着奶牛 i 不会传递消息给其他奶牛。

不幸的是,奶牛们发现从某个特定奶牛传递出的消息有可能最终陷入循环,永远的在这一循环中进行消息传递。如果一头奶牛传递出的消息最终会陷入循环,那么这头奶牛被称作为循环奶牛。奶牛们想要避免消息从循环奶牛那传递出来。请帮助她们求出有多少头奶牛不是循环奶牛。

输入

1 行:奶牛数量 N

2 \dots N + 1 行:第 i + 1 行包含 F_i

输出

1 行:一个整数,表示所有奶牛中不是循环奶牛的数量。

样例

输入

5
0
4
1
5
4

输出

2

提示

5 头奶牛。奶牛 1 不传递消息,奶牛 2 将消息传递给奶牛 4 ,其他奶牛以此类推。

奶牛 1 不是循环奶牛,因为她不会传递消息。奶牛 3 不是循环奶牛,因为她会将信息传递给奶牛 1 ,而接着奶牛 1 不会传递消息。其他所有奶牛都是循环奶牛。

来源

USACO