fork download
  1. import java.util.*;
  2. import java.lang.*;
  3. import java.math.*;
  4. import java.io.*;
  5.  
  6. import static java.lang.Math.*;
  7. import static java.util.Arrays.*;
  8.  
  9. public class A{
  10. Scanner sc=new Scanner(System.in);
  11.  
  12. int INF=1<<28;
  13. double EPS=1e-9;
  14.  
  15. int n;
  16. int[] p;
  17.  
  18. void run(){
  19. n=sc.nextInt();
  20. p=new int[n];
  21. for(int i=0; i<n; i++){
  22. p[i]=sc.nextInt();
  23. if(p[i]>0){
  24. p[i]--;
  25. }
  26. }
  27. int ans=0;
  28. for(int i=0; i<n; i++){
  29. int c=0;
  30. for(int v=i; v>=0; v=p[v]){
  31. c++;
  32. }
  33. ans=max(ans, c);
  34. }
  35. println(ans+"");
  36. }
  37.  
  38. void println(String s){
  39. System.out.println(s);
  40. }
  41.  
  42. void print(String s){
  43. System.out.print(s);
  44. }
  45.  
  46. void debug(Object... os){
  47. System.err.println(Arrays.deepToString(os));
  48. }
  49.  
  50. public static void main(String[] args){
  51. new A().run();
  52. }
  53. }
Not running #stdin #stdout 0s 0KB
stdin
Standard input is empty
stdout
Standard output is empty