Pagini recente » Cod sursa (job #2686215) | Cod sursa (job #2642978) | Cod sursa (job #584381) | Cod sursa (job #981419) | Cod sursa (job #2761590)
#include <bits/stdc++.h>
using namespace std;
const int NMAX = 100003;
int n;
struct elem {
int x, y;
} v[NMAX];
bool cmp(elem a, elem b) {
return a.y < b.y;
}
int main() {
freopen("heavymetal.in","r",stdin);
freopen("heavymetal.out","w",stdout);
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
scanf("%d %d", &v[i].x, &v[i].y);
}
sort(v + 1, v + n + 1, cmp);
int st = v[1].x, dr = v[1].y, hmax = v[1].y - v[1].x;
int ans = 0;
for (int i = 2; i <= n; i++) {
if(dr <= v[i].x || v[i].y <= st){
ans += hmax;
st = v[i].x;
dr = v[i].y;
hmax = v[i].y - v[i].x;
}else{
if(hmax < v[i].y - v[i].x ){
hmax = v[i].y - v[i].x;
st = v[i].x;
dr = v[i].y;
}
}
}
ans += dr-st;
printf("%d\n",ans);
return 0;
}