Cod sursa(job #629086)

Utilizator ZexonAvramita Teodor Zexon Data 2 noiembrie 2011 17:11:07
Problema Orase Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <iostream>
#include <fstream>
#include <string>
#include <algorithm>
#include <cstdlib>
using namespace std;

ifstream in("orase.in");
ofstream out("orase.out");
pair <int,int> v[50000];

int main()
{
    int nr_strazi;
    int lung_strada;
    string tmp;
    in>>tmp;
    lung_strada =atoi(tmp.c_str());
    in>>tmp;
    nr_strazi =atoi(tmp.c_str());

    for (int i = 0; i< nr_strazi; i++)
    {

        in>>tmp;
        v[i].first =atoi(tmp.c_str());
        in>>tmp;
        v[i].second =atoi(tmp.c_str());

    }
    sort(&v[0],&v[nr_strazi]);
    int departe =0;
    int dmax=0;
    int dc =0;
    for(int i =1; i<nr_strazi ; i++)
        {
            dc= v[i].first -v[departe].first +v[i].second + v[departe].second;
            //out<<v[i].first<<",";
            //out<<v[i].second<<endl;
            if(dc>dmax)
                dmax=dc;
            if(v[i].second > v[departe].second+v[i].first-v[departe].first)
                departe=i;
        }
    out<<dmax;
    return 0;
}