#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<string>
#include<vector>
#include<queue>
const int maxn=2e4+5;
using namespace std;
long long n,l[maxn],r[maxn];
long long f[2][maxn];
int main(){
scanf("%lld",&n);
for(int i=1;i<=n;i++)
scanf("%lld%lld",&l[i],&r[i]);
f[0][1]=abs(l[1]-1)+r[1]-l[1];
f[1][1]=abs(r[1]-1);
for(int i=2;i<=n;i++){
f[0][i]=min(f[0][i-1]+abs(l[i-1]-r[i]),f[1][i-1]+abs(r[i-1]-r[i]))+r[i]-l[i]+1;
f[1][i]=min(f[0][i-1]+abs(l[i-1]-l[i]),f[1][i-1]+abs(r[i-1]-l[i]))+r[i]-l[i]+1;
}
printf("%lld",min(f[0][n]+n-l[n],f[1][n]+n-r[n]));
return 0;
}