Atcoder TOYOTA SYSTEMS Programming Contest 2021(AtCoder Beginner Contest 228) B - Takahashi‘s Secret

Takahashi不慎让朋友X得知了他尴尬的秘密。每个朋友得知秘密后会将其分享给A[i],只要A[i]还未得知。问题求解最终会有多少朋友知道这个秘密。输入包括N(朋友数),X(最先得知秘密的朋友编号)和A数组。通过搜索或循环可以找到秘密传播的范围。示例展示了传播过程和答案计算。
摘要由CSDN通过智能技术生成

题目链接:B - Takahashi's Secret (atcoder.jp)

Problem Statement

Takahashi has N friends. They have nicknames: Friend 1, Friend 2, …, Friend N.

One day, Takahashi accidentally let one of his friends, Friend X, learn his shameful secret.
For each i = 1,2,…,N, when Friend ii learns the secret, he/she will share it with Friend Ai​, if Friend Ai​ has not already learned it.

How many of Takahashi's friends will learn the secret in the end?

Constraints

  • 2≤N≤105
  • 1≤X≤N
  • 1≤Ai​≤N
  • Ai​!=i
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

N X
A1​ A2​ ... AN​

Output

Print the answer.


Sample Input 1 Copy

4 2
3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值