Cod sursa(job #1770880)

Utilizator lucaperjuLuca Perju Verzotti lucaperju Data 4 octombrie 2016 22:45:04
Problema Orase Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <fstream>

using namespace std;
ifstream in ("orase.in");
ofstream out ("orase.out");
int d[50002],l[50002];
int main()
{
    int n,m,i,m1=0,m2=0,s1,s2,m1i,m2i;
    in>>m>>n;
    for(i=1;i<=n;i++)
    {
        in>>d[i]>>l[i];
        if(l[i]>m1)
        {
            m2i=m1i;
            m2=m1;
            m1=l[i];
            m1i=i;
        }
        else
        if(l[i]>m2)
        {
            m2=l[i];
            m2i=i;
        }
    }
    if(d[m2i]>d[m1i])
    {
        s1=m1+m2+d[m2i]-d[m1i];
    }
    else
    {
        s1=m1+m2+d[m1i]-d[m2i];
    }
    m1=m2=0;
    for(i=1;i<=n;i++)
    {
        if(d[i]>m1)
        {
            m2i=m1i;
            m2=m1;
            m1=l[i];
            m1i=i;
        }
        else
        if(d[i]>m2)
        {
            m2=l[i];
            m2i=i;
        }
    }
    if(d[m2i]>d[m1i])
    {
        s2=m1+m2+d[m2i]-d[m1i];
    }
    else
    {
        s2=m1+m2+d[m1i]-d[m2i];
    }
    if(s2>s1)
    out<<s2;
    else
    out<<s1;
    return 0;
}