Cod sursa(job #902470)

Utilizator noruIlies Norbert noru Data 1 martie 2013 14:28:05
Problema Cutii Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream f("cutii.in");
ofstream g("cutii.out");
 
int n,l[3501],poz[3501],v[3501],i;
typedef struct {int x,y,z;}CUTII;
CUTII c[3501];
void citire()
{
    for (i=1;i<=n;i++)
        f>>c[i].x>>c[i].y>>c[i].z;
}
 
 
int cmp (CUTII a, CUTII b)
{
	return (a.z<b.z);
}
//scm
void scm()
{
    int max,p;
	int j;
    for (i=1;i<=n;i++) l[i]=1;
    for (i=n-1;i>=1;i--)
    {
        max=p=0;
        j=i+1;
		while (j<=n)
		{
			if (l[j]>max)
				if (c[i].x<c[j].x)
					if (c[i].y<c[j].y)
            {
                max=l[j];
                p=j;
            }
			j++;
		}
        poz[i]=p;
        l[i]=max+1;
    }
    max=0;
    for (i=1;i<=n;i++) if (l[i]>max) max=l[i];
    g<<max<<'\n';
}
 
int main()
{
    int t,l;
    f>>n>>t;
    for (l=1;l<=t;l++)
    {
        citire();
        sort(c+1,c+n+1,cmp);
        scm();
    }
    return 0;
}