Cod sursa(job #479251)

Utilizator loginLogin Iustin Anca login Data 23 august 2010 13:51:01
Problema Cutii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.78 kb
# include <fstream>
# include <vector>
# include <algorithm>
using namespace std;
struct dim{
	int x, y, z;
	dim(){}
	dim(int X, int Y, int Z){
		x=X;y=Y;z=Z;}
	friend bool operator < (const dim &a, const dim &b){
		if (a.x<b.x && a.y<b.y && a.z<b.z)return 1;
		return 0;
	}
};
int n, t, l[3505];
vector<dim>V;

int main ()
{
	ifstream fin ("cutii.in");
	ofstream fout ("cutii.out");
	fin>>n>>t;
	int max, x, y, z;
	for(;t--;)
	{
		V.erase(V.begin(), V.end());
		for(int i=0;i<=n;++i)
			l[i]=1;
		max=0;
		for(int i=1;i<=n;++i)
		{
			fin>>x>>y>>z;
			V.push_back(dim(x, y, z));
		}
		sort(V.begin(),V.end());
		for(int i=1;i<n;++i)
			for(int j=i-1;j>=0;--j)
				if (l[j]+1>l[i] && V[j]<V[i])
				{
					l[i]=l[j]+1;
					if(l[i]>max)
						max=l[i];
				}
		fout<<max<<"\n";
	}
	return 0;
}