Cod sursa(job #1894165)

Utilizator DobosDobos Paul Dobos Data 26 februarie 2017 16:12:45
Problema Gardieni Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <bits/stdc++.h>
#define NMAX 50010
#define INF 1e9
using namespace std;

ifstream fin("gardieni.in");
ofstream fout("gardieni.out");

struct gardian{

    int b,e,c;

};

struct cmp{

    bool operator()(const gardian &a,const gardian &b){
        if(a.b == b.b)
            return a.c < b.c;
        return a.b < b.b;

    }
};

gardian V[NMAX];

int main()
{
    ios :: sync_with_stdio(false);

    int n,T;

    fin >> n >> T;

    for(int i = 1; i <= n; i++)
        fin >> V[i].b >> V[i].e >> V[i].c;

    sort(V + 1, V + n + 1,cmp());

    int S = 0,sol;

    for(int j = 1; j <= T; j++){
        sol = INF;
        for(int i = 1; i <= n && V[i].b <= j; i++)
            if( j >= V[i].b && j <= V[i].e && sol > V[i].c)
                sol = V[i].c;
        S += sol;
    }

    fout << S;


    return 0;
}