#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int MAXN=100010;
ll n,l[MAXN],r[MAXN];
ll ans,suml,sumr;
priority_queue < ll,vector<ll>,less<ll> > ql;
priority_queue < ll,vector<ll>,greater<ll> > qr;
int main () {
	scanf("%d",&n);
	for (int i=1;i<=n;i++) {
		scanf("%d%d",&l[i],&r[i]);
	}
	ql.push(l[1]),qr.push(l[1]);
	for (int i=2;i<=n;i++) {
		suml+=r[i]-l[i],sumr+=r[i-1]-l[i-1];
		ll a=ql.top()-suml,b=qr.top()+sumr;
		//cout << "        " << i << "  " << a << "  " << b << "  " << suml << "  " << sumr << endl; 
		if (l[i]<a) {
			ans+=a-l[i];
			qr.push(a-sumr),ql.push(l[i]+suml),ql.push(l[i]+suml),ql.pop();
		} else if (a<=l[i]&&l[i]<=b) {
			ql.push(l[i]+suml),qr.push(l[i]-sumr);
		} else {
			ans+=l[i]-b;
			ql.push(b+suml),qr.push(l[i]-sumr),qr.push(l[i]-sumr),qr.pop();
		}
	}
	printf("%lld\n",ans);
	return 0;
}