Cod sursa(job #2236644)

Utilizator mircearoataMircea Roata Palade mircearoata Data 30 august 2018 10:37:08
Problema Heavy metal Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <algorithm>

using namespace std;

ifstream in("heavymetal.in");
ofstream out("heavymetal.out");

int n;
struct concert
{
    int a, b;
} v[100001];

int d[100001], maxx;

int main()
{
    in >> n;
    for(int i = 1; i <= n; i++)
        in >> v[i].a >> v[i].b;
    sort(v + 1, v + n + 1, [](const concert & l, const concert & r){return (l.a == r.a)?(l.b < r.b):(l.a < r.a);});
    for(int i = 1; i <= n; i++)
    {
        d[i] = v[i].b - v[i].a;
        for(int j = 1; j < i; j++)
            if(v[j].b <= v[i].a)
            {
                d[i] = max(d[i],v[i].b - v[i].a + d[j]);
                if(d[i] > maxx)
                    maxx = d[i];
            }
    }
    out << maxx;
    return 0;
}