Mai intai trebuie sa te autentifici.
Cod sursa(job #127108)
| Utilizator | Data | 23 ianuarie 2008 13:52:26 | |
|---|---|---|---|
| Problema | Gardieni | Scor | 20 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.74 kb |
#include <cstdio>
const int maxn = 50010;
const int inf = 1 << 30;
FILE *in = fopen("gardieni.in","r"), *out = fopen("gardieni.out","w");
struct f
{
int a, b, c;
};
int n, t;
f h[maxn];
int min[maxn];
void read()
{
fscanf(in, "%d %d", &n, &t);
for ( int i = 1; i <= n; ++i )
fscanf(in, "%d %d %d", &h[i].a, &h[i].b, &h[i].c);
}
int main()
{
read();
for ( int i = 1; i <= t; ++i )
min[i] = inf;
for ( int i = 1; i <= n; ++i )
for ( int j = h[i].a; j <= h[i].b; ++j )
if ( h[i].c < min[j] )
min[j] = h[i].c;
int s = 0;
for ( int i = 1; i <= t; ++i )
s += min[i];
fprintf(out, "%d\n", s);
return 0;
}
