Cod sursa(job #447871)

Utilizator drujbarultudorTudor Mihai Munteanu drujbarultudor Data 1 mai 2010 17:43:08
Problema Cutii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <cstdio>
#include <algorithm>
using namespace std;
struct cutie
{
	int x,y,z;
};
cutie a[35000];
short int l[3500];
int lmax,p,n,t,i,j,k,maxxx;
short int  maxx;
bool comp (cutie i,cutie j)
{
	return i.x<j.x;
}


int main ()
{
	freopen ("cutii.in","r",stdin);
	freopen ("cutii.out","w",stdout);
	scanf("%d%d",&n,&t);
	for (i=1;i<=t;i++)
	{
		maxx=1;
		l[1]=1;
		for (j=1;j<=n;j++)
			scanf("%d %d %d",&a[j].x,&a[j].y,&a[j].z);
		sort(a+1,a+n+1,comp);
		for (j=2;j<=n;j++)
		{
			lmax=0;
			for (k=1;k<j;k++)
			{
				if (a[k].x>=a[j].x || a[k].y>=a[j].y || a[k].z>=a[j].z)
					continue;
				if (l[k]>lmax) lmax=l[k];
			}
			l[j]=1+lmax;
			if(l[j]>maxx)
				maxx=l[j];
		}
		printf("%d\n",maxx);
	}
	return 0;
}