Cod sursa(job #124859)

Utilizator Adriana_SAdriana Sperlea Adriana_S Data 20 ianuarie 2008 09:25:15
Problema Gardieni Scor 100
Compilator cpp Status done
Runda preONI 2008, Runda 3, Clasa a 10-a Marime 0.57 kb
#include <stdio.h>
#include <stdlib.h>

const int T_MAX = 1000010;

int MIN[T_MAX];
char buf[1048576];

int main()
{
	freopen("gardieni.in", "r", stdin);
#ifndef _SCREEN_
	freopen("gardieni.out", "w", stdout);
#endif

	setbuf(stdin, buf);

	int N, T, i, a, b, c, j;

	scanf("%d %d\n", &N, &T);
	for (i = 1; i <= N; i ++) {
		scanf("%d %d %d\n", &a, &b, &c);

		for (j = a; j <= b; j ++) {
			if (MIN[j] == 0) MIN[j] = c;
			else {
				if (c < MIN[j]) MIN[j] = c;
			}
		}
	}

	long long rez = 0;
	for (i = 1; i <= T; i ++) {
		rez += MIN[i];
	}

	printf("%lld\n", rez);

	return 0;
}