Cod sursa(job #200310)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 23 iulie 2008 12:34:54
Problema Gardieni Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <stdio.h>

#define NMAX 50005
#define NN 1000001
#define INFINIT 200000010

unsigned int N;
long X[NMAX],Y[NMAX],C[NMAX];
long minim[NN];
long rez,T;

void read()
{
long i;

freopen("gardieni.in","rt",stdin);
freopen("gardieni.out","wt",stdout);

scanf("%d %ld", &N, &T);

for (i=1;i<=N;i++)
     scanf("%ld %ld %ld", &X[i], &Y[i], &C[i]);
}

void solve()
{
long i,j;

for (i=1;i<=T;i++)
     minim[i]=INFINIT;
for (i=1;i<=N;i++)
     {
     for (j=X[i];j<=Y[i];j++)
	  if (minim[j]>C[i])
	      minim[j]=C[i];
      }

rez=0;
for (i=1;i<=T;i++)
    rez+=minim[i];
}

void print()
{
printf("%ld", rez);
}

int main()
{
read();
solve();
print();
return 0;
}