题目描述
Leslie非常喜欢真心话大冒险的游戏。这一次游戏的规则有些不同。每个人都有自己的真心话,一开始每个人也都只知道自己的真心话。每一轮每个人都告诉指定的一个人他所知道的所有真心话,那么Leslie想知道,多少轮后他能知道所有人的真心话呢?题目保证数据有解。
输入
第一行一个数n,表示一共有n个人,编号为1~n, Leslie为第n个人。n<=1000
第二行有n个数,第i个数表示第i个人要传递真心话的对象。
输出
输出一个数x,表示第x轮后Leslie知道了所有的真心话。
输入样例
4
2 4 2 1
输出样例
2
题目链接:https://buaacoding.cn/problem/1971/index
写在前面:
相信有C语言基础的同学都不难理解递归。举个简单的例子:从前有座山,山里有座庙,庙里有个和尚,和尚在讲故事,从前有座山,山里有座庙,庙里有个和尚,和尚在讲故事,从前有座山...
递归是我们经常用到的算法,当熟悉递归的做法以及题目的思路时,递归经常可以简化代码量。当然,递归也有他的弊端,那就是递归是一个不断深入的过程,在这过程中它每次都需要开辟一块栈空间来存