Cod sursa(job #483425)

Utilizator vladtarniceruVlad Tarniceru vladtarniceru Data 8 septembrie 2010 17:24:01
Problema Cutii Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.93 kb
# include <fstream>
# include <cstdio>
# include <cstdio>
# include <algorithm>
  using namespace std;
  
    struct stu { 
		int x, y, z;
	};
	
    inline bool cmp(stu a, stu b){
		return a.z<b.z;
    }
	
	stu v[3510];
	int n, i, j, mx, a[3510], t;
	
	int main (){
		ifstream f ("cutii.in");
		f>>n>>t;
		ofstream g ("cutii.out");
		for (; t; --t){
			for (i=0; i<=n+1; ++i) a[i]=1;
    		for (i=1; i<=n; ++i) f>>v[i].x>>v[i].y>>v[i].z;
	    	sort (v+1, v+n+1, cmp);
    		//for (i=1; i<=n; ++i, g<<'\n') 
	    	//	g<<v[i].x<<' '<<v[i].y<<' '<<v[i].z;
    		mx=1;
	    	a[1]=1;
			//for (i=1; i<=n; ++i) a[i]=1;
		    for (i=2; i<=n; ++i){
				if ( !a[i] ) a[i]=1;
				for (j=i-1; j; --j)
			    	if (v[i].x>v[j].x && v[i].y>v[j].y && v[i].z>v[j].z && a[i]<a[j]+1)
				        a[i]=a[j]+1;
				    if(a[i]>mx) mx=a[i];
			}
			//memset (a, 0, sizeof (a));
			g<<mx<<'\n';
		}
    	g.close ();
	    return 0;
	}