Cod sursa(job #1770178)
Utilizator | Data | 3 octombrie 2016 20:35:12 | |
---|---|---|---|
Problema | Orase | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("orase.in");
ofstream cout("orase.out");
pair <int,int> v[50005];
int m,n,i,lg,d[50005],di;
int main()
{
cin>>m>>n;
for(i=1;i<=n;i++)
cin>>v[i].first>>v[i].second;
sort(v+1,v+n+1);
di=0;
d[1]=v[1].second;
for(i=1;i<=n;i++)
{
if(d[i-1]+v[i].first-v[i-1].first+v[i].second>lg)
lg=d[i-1]+v[i].first-v[i-1].first+v[i].second;
d[i]=max(v[i].second,d[i-1]+v[i].first-v[i-1].first);
}
cout<<lg;
return 0;
}