Pagini recente » Cod sursa (job #2166756) | Deque și aplicații | Cod sursa (job #513183) | Autentificare | Cod sursa (job #1304960)
#include <bits/stdc++.h>
using namespace std;
ifstream in("cutii.in");
ofstream out("cutii.out");
struct abc{ int x,y,z; }a[3501];
bool comp(abc p,abc q)
{
if(p.x!=q.x)return p.x<q.x;
else if(p.y!=q.y)return p.y<q.y;
else return p.z<q.z;
}
vector<int> d;
int main()
{
int t,n;
for(in>>n>>t;t;t--)
{
for(int i=1;i<=n;i++)in>>a[i].x>>a[i].y>>a[i].z;
sort(a+1,a+n+1,comp);
d=vector<int>(n+1);
int sol=0;
for(int i=1;i<=n;i++)
{
for(int j=i-1;j>=0;j--)
if(a[i].x>a[j].x && a[i].y>a[j].y && a[i].z>a[j].z)
d[i]=max(d[i],d[j]+1);
sol=max(sol,d[i]);
}
out<<sol<<'\n';
}
return 0;
}