Pagini recente » Cod sursa (job #1705986) | Cod sursa (job #3122910) | Cod sursa (job #756642) | Cod sursa (job #1226275) | Cod sursa (job #247565)
Cod sursa(job #247565)
#include<fstream.h>
#include<stdlib.h>
ifstream f("orase.in");
ofstream g("orase.out");
struct oras { int d;
int l;} a[50000];
int m,n,i,j,x,max;
int cmp( const void *a, const void *b)
{
const oras *v1=(oras *) a;
const oras *v2=(oras *)b;
if (v1->d>v2->d) return 1;
else
if(v1->d==v2->d) return 0;
else return -1;
}
void main(){
f>>m>>n;
for(i=0;i<n;i++)
f>>a[i].d>>a[i].l;
qsort(a,n,sizeof(oras),cmp);
/*for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
if(d[i]>d[j]){
x=d[i];
d[i]=d[j];
d[j]=x;
x=l[i];
l[i]=l[j];
l[j]=x;}*/
max=0;j=0;
for(i=1;i<=n;i++){
if(max<(x=a[i].d-a[j].d+a[i].l+a[j].l))
max=x;
if(a[i].l-a[i].d>a[j].l-a[j].d)
j=i;}
g<<max;
}