/*
TASK:MAN
LANG:C++
*/
#include<iostream>
using namespace std;
struct duo
{
    int a,b,c;
};
int main()
{
    int m,a[15000]={0},kom=0,b[10000],end=0,br=0;
    cin>>m;
    duo d[m];
    for (int i=0;i<m;i++)
    {cin>>d[i].a>>d[i].b;d[i].c=0;}
    a[d[0].a]=1;
    a[d[0].b]=1;
    kom+=2;
    d[0].c=1;
    end++;
    b[br++]=d[0].a;
    b[br++]=d[0].b;
    for (int i=0;i<br;i++)
    if (end==m) break; else
    for (int j=0;j<m;j++)
    if (end==m) break; else
    if (d[j].c==0)
    if (d[j].a==b[i])
    {
        if (a[d[j].b]==0)
        {
            b[br++]=d[j].b;
            a[d[j].b]=1;
            d[j].c=1;
            kom++;end++;
        }    
        else  {d[j].c=1;end++;}
    } 
    else if (d[j].b==b[i])
    {
        if (a[d[j].a]==0)
        {
            b[br++]=d[j].a;
            a[d[j].a]=1;
            d[j].c=1;
            kom++;end++;
        }    
        else  {d[j].c=1;end++;}
    }
    cout<<kom-1<<endl;
    return 0;
}
    
    
    
    
