#include <iostream>

using namespace std;

int main()
{
    int n,r,c,i,k,potrebno,u,vreme,u1,u2,j;
    u1 = 0;
    u2 = 0;
    vreme = 0;
    u = 0;
    potrebno = 0;
    k = 0;
    cin >> n;
    int kolone[n];
    int redovi[n];
    for(i = 0;i < n;i++){
        kolone[i] = 0;
        redovi[i] = 0;
    }

    for(i = 0;i < n;i++){
        cin >> r;
        cin >> c;
        r--;
        c--;
        kolone[c]++;
        redovi[r]++;
    }
    for(i = 0;i < n;i++){
            if(kolone[i] != 1) break;
            u1++;
        }
    for(i = 0;i < n;i++){
            if(redovi[i] != 1) break;
            u2++;
        }
        if(u1/n == 1){
            if(u2/n == 1){
                cout << "0";
                return 0;
            }
        }
    u = 0;
    if(u1/n == 0){
     while(k != 1){
        for(i = 0;i < n-1;i++){
            if(kolone[i] == 0){
                if(kolone[i+1] == 0) potrebno++;
                if(kolone[i+1] != 0){
                    potrebno++;
                    if(kolone[i+1] <= potrebno){
                        kolone[i] = kolone[i+1];
                        vreme = vreme + kolone[i];
                        kolone[i+1] = 0;
                        potrebno = 0;
                        break;
                    }
                    else if(kolone[i+1] > potrebno){
                        kolone[i] = potrebno;
                        vreme = vreme + potrebno;
                        kolone[i+1] = kolone[i+1] - potrebno;
                        potrebno = 0;
                        break;
                    }
                }
            }
            else if(kolone[i] > 1){
                kolone[i+1] = kolone[i+1] + kolone[i]-1;
                vreme = vreme + kolone[i]-1;
                kolone[i] = 1;
                break;
            }
        }

        for(i = 0;i < n;i++){
            if(kolone[i] != 1) break;
            u++;
        }
        if(u/n == 1){
            u = 0;
            k = 1;
        }
        u = 0;

    }
    }
    k = 0;
    u = 0;
    if(u2/n == 0){
     while(k != 1){
        for(i = 0;i < n-1;i++){
            if(redovi[i] == 0){
                if(redovi[i+1] == 0) potrebno++;
                if(redovi[i+1] != 0){
                    potrebno++;
                    if(redovi[i+1] <= potrebno){
                        redovi[i] = redovi[i+1];
                        vreme = vreme + redovi[i];
                        redovi[i+1] = 0;
                        potrebno = 0;
                        break;
                    }
                    else if(redovi[i+1] > potrebno){
                        redovi[i] = potrebno;
                        vreme = vreme + potrebno;
                        redovi[i+1] = redovi[i+1] - potrebno;
                        potrebno = 0;
                        break;
                    }
                }
            }
            else if(redovi[i] > 1){
                redovi[i+1] = redovi[i+1] + redovi[i]-1;
                vreme = vreme + redovi[i]-1;
                redovi[i] = 1;
                break;
            }
        }

        for(i = 0;i < n;i++){
            if(redovi[i] != 1) break;
            u++;
        }
        if(u/n == 1){
            u = 0;
            k = 1;
        }
        u = 0;
    }
    }

    cout << vreme;
    return 0;
}