#include<iostream>
#include<fstream>
#include<math.h>
#include<vector>
using namespace std;
vector<int> node[100];
int cost[101];

void pathFinding(int n,int c)
{
     if (cost[n]>c) { cost[n]=c; if(n!=100)
                    for(int i= 0; i < node[n].size(); i++) { pathFinding(node[n][i],c+1);}}
}

int main()
{
    fstream inFile,outFile;
    inFile.open("DATA5.txt",ios::in);
    outFile.open("OUT5.txt",ios::out|ios::trunc);
    char c[3];
    int n,m,o,iloop=5;
    //=======
    while(iloop--){
    inFile>>c;
    n=atoi(c);
    for(int i=0;i<101;i++)
    {
            cost[i]=100000000;
    }
    
    for(int i=0;i<n;i++)
    {
            inFile>>c;
            m=atoi(c)-1;
            inFile>>c;
            o=atoi(c)-1;
            if(o==0)o=100;
            node[m].push_back(o);
            }
    pathFinding(0,0);
    outFile<<cost[100]<<endl;
    for(int i=0;i<100;i++)
    {
            node[i].clear();
    }
}
    //=======
    inFile.close();
    outFile.close();
    system("pause");
    return 0;
}

