Cod sursa(job #850611)

Utilizator stoicatheoFlirk Navok stoicatheo Data 8 ianuarie 2013 17:25:40
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include<stdio.h>
#include<algorithm>
using namespace std;
 
struct orasele{int x,y;};
orasele v[50001];
 
bool compar(const orasele A, const orasele B){
    if(A.x==B.x)
        return A.y<B.y;
    return A.x<B.x;
}
 
int i,n,m,vscx,sc,scmax,vscy,pp,xinc,yinc;
int main(){
    freopen("orase.in","r",stdin);
    freopen("orase.out","w",stdout);
    scanf("%d%d",&m,&n);
    for(i=1;i<=n;i++){
        scanf("%d%d",&v[i].x,&v[i].y);
    }
    sort(v+1,v+n+1,compar);
   xinc=v[1].x;
   yinc=v[1].y;
   sc=0;
   for(i=2;i<=n;i++){
       if(v[i].x-xinc+v[i].y+yinc>sc)
            sc=v[i].x-xinc+v[i].y+yinc;
        if(v[i].x-xinc+yinc<v[i].y){
            xinc=v[i].x;
            yinc=v[i].y;
        }
   }
   printf("%d",sc);
}