编程题
小猪存钱罐 ### 题目描述 Byteazar the Dragon 拥有 $N$ 个小猪存钱罐。每一个存钱罐能够用相应的钥匙打开或者被砸开。Byteazar 已经将钥匙放入到一些存钱罐中。现在已知每个钥匙所在的存钱罐,Byteazar 想要买一辆小汽车,而且需要打开所有的存钱罐。然而,他想要破坏尽量少的存钱罐,帮助 Byteazar 去决策最少要破坏多少存钱罐。 读入存钱罐的数量以及相应的钥匙的位置,求出能打开所有存钱罐的情况下,需要破坏的存钱罐的最少数量并将其输出。 ### 输入描述 第一行:包括一个整数 $N(1 \leq N \leq 10^6)$,这是 Byteazar the Dragon 拥有的存钱罐的数量。 存钱罐(包括它们对应的钥匙)从 $1$ 到 $N$ 编号。 接下来有 $N$ 行:第 $i+1$ 行包括一个整数 $x$,表示第 $i$ 个存钱罐对应的钥匙放置在了第 $x$ 个存钱罐中。 ### 输出描述 输出一个整数,表示能打开所有存钱罐的情况下,需要破坏的存钱罐的最少数量。 ### 输入输出样例 #### 示例 1 >输入 ```txt 4 2 1 2 4 ``` >输出 ```txt 2 ```
查看答案
赣ICP备20007335号-2