Cod sursa(job #873513)

Utilizator misinozzz zzz misino Data 7 februarie 2013 12:23:14
Problema Cutii Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include<fstream>
#include<cstring>
#include<algorithm>
#include<cstdio>
using namespace std;
FILE *f,*g;
int i,t,n,maxi,j,l[3505];
struct cutie{int x,y,z;};
cutie v[3505];
bool cmp(cutie a,cutie b)
{
    return a.x<b.x;
}
int main()
{
    f=fopen("cutii.in","r");
    g=fopen("cutii.out","w");
    fscanf(f,"%d%d",&n,&t);
    for(;t;--t)
    {
        for(i=1;i<=n;++i)
        fscanf(f,"%d%d%d",&v[i].x,&v[i].y,&v[i].z);
        sort(v+1,v+n+1,cmp);
        memset(l,0,sizeof(l));
        for(i=n;i;--i)
        {
            for(j=i+1;j<=n;++j)
            if(l[i]<l[j]+1&&v[i].y<v[j].y&&v[i].z<v[j].z)
            l[i]=l[j]+1;
            if(l[i]==0)
            l[i]=1;
        }
        maxi=0;
        for(i=1;i<=n;++i)
        if(l[i]>maxi)
        maxi=l[i];
        fprintf(g,"%d\n",maxi);
    }
    return 0;
}