网易的游历魔法王国
方便自己回忆,立个flag。参考博客:http://blog.csdn.net/m0_37650263/article/details/77938968?locationNum=2&fps=1
import java.util.*;
public class main1
{
public static void main(String []args)
{
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int L=sc.nextInt();
int parent[]=new int[n-1];
for(int i=0;i<n-1;i++)
parent[i]=sc.nextInt();
int node_len[]=new int[n];
node_len[0]=1;
for(int i=0;i<n-1;i++)
{
//当前城市的下一个连接城市的最大深度等于当前城市的最大深度+1
node_len[i+1]=node_len[parent[i]]+1;
}
Arrays.sort(node_len);
int node_MaxDepth=node_len[node_len.length-1];
if(node_MaxDepth>L)
System.out.print(L+1);
else{
//剩下能走的步数
int left=L-(node_MaxDepth-1);
//用剩下步数走其他城市的个数
int left_city=(left/2);
System.out.print(left_city+node_MaxDepth);
}
}
}
#笔试题目#