Cod sursa(job #1754889)

Utilizator anisca22Ana Baltaretu anisca22 Data 8 septembrie 2016 21:59:21
Problema Orase Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("orase.in");
ofstream fout("orase.out");
long long m,n,d[51000],l[1100000],mx,nf,nr;
long long nat(long long a)
{
    if(a>0)
        return a;
    return -a;
}
int main()
{
    fin>>m>>n;
    nf=n;
    for(int i=1;i<=n;i++)
        {
            fin>>d[i]>>nr;
            if(nr>l[d[i]] && l[d[i]]!=0)
                nf--;
            if(nr>l[d[i]])
            {
                l[d[i]]=nr;
            }
        }
    /*cout<<nf<<endl;
    for(int i=1;i<=nf;i++)
        cout<<d[i]<<" "<<l[d[i]]<<endl;
        */
    for(int i=2;i<=nf;i++)
        for(int j=1;j<i;j++)
        {
            if(nat(d[i]-d[j])+l[d[i]]+l[d[j]]>mx)
                mx=nat(d[i]-d[j])+l[d[i]]+l[d[j]];
        }
    fout<<mx<<"\n";
    return 0;
}