Cod sursa(job #205328)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 30 august 2008 23:00:26
Problema Gardieni Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>

#define NMAX 50005
#define NN 1000000
#define INFINIT 10000010

long N;
long X[NMAX],Y[NMAX];
long C[NMAX];
long minim[NN];
long rez=0,T;

void read()
{
long i;

freopen("gardieni.in","r",stdin);
scanf("%ld %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];
      }

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

void print()
{
freopen("gardieni.out","w",stdout);
printf("%ld\n", rez);
}

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