import java.util.Scanner;

class Main{
	
	public static void main(String[] args) {
		Scanner in= new Scanner(System.in);
		while(in.hasNext()){
			int n = in.nextInt();
			int[] tree = new int[n];
			for (int i = 0; i < tree.length; i++) {
				tree[i]=-1;
			}
			for(int i =0;i<n-1;i++){
				int p = in.nextInt();
				int c = in.nextInt();
				tree[c] =p;
			}
			int max=1;
			int count =0;
			for (int i = n-1; i >0; --i) {
				int cur=i;
				while(cur!=-1)
				{
					cur = tree[cur];
					count++;
				}
				if(count>max) max =count;
				count=0;
			}
			System.out.println(max);
		}
	}
}

//这个应该是O(n)的做法了吧 AC了