Cod sursa(job #3709)

Utilizator shadowmanAlex Matei shadowman Data 28 decembrie 2006 00:37:08
Problema Cutii Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <stdio.h>

int getmax(int** v, int N)
{
	int* m = new int [N];
	int i, j;
	int max = 1;

	for(i = 0; i < N; i++)
	{
		m[i] = 1;

		for(j = 0; j < i; j++)
		{
			if(v[i][0] > v[j][0] && v[i][1] > v[j][1] && (m[j] + 1) > m[i])
			{
				m[i] = m[j] + 1;
			}
		}

		if(m[i] > max)
		{
			max = m[i];
		}
	}

	return max;
}

int main()
{
	freopen("cutii.in", "rt", stdin);
	freopen("cutii.out", "wt", stdout);

	int N, T, j, i;
	int v1, v2, v3;

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

	int** v = new int*[N];

	for(i = 0 ; i < N; i++)
	{
		v[i] = new int [2];
	}

	for(j = 0; j < T; j++)
	{
		for(i = 0; i < N; i++)
		{
			scanf("%d%d%d", &v1, &v2, &v3);

			v[v1 - 1][0] = v2;
			v[v1 - 1][1] = v3;
		}

		printf("%d\n", getmax(v, N));
	}

	return 0;
}