Pagini recente » Cod sursa (job #934985) | Cod sursa (job #2175798) | Cod sursa (job #797205) | Cod sursa (job #825366) | Cod sursa (job #2212411)
#include <bits/stdc++.h>
using namespace std;
struct cutie{
int x,y,z;
long long v;
};
vector <cutie> p;
bool incape(cutie a, cutie b){ //b in a
return (a.x<b.x && a.y<b.y && a.z<b.z);
}
bool sortc(cutie a, cutie b){ //b in a
return a.v<b.v;
}
int main(){
int n,t,mx,a[3500];
cutie c;
ifstream fin("cutii.in");
ofstream fout("cutii.out");
fin>>n>>t;
for (int i=0;i<t;i++){
for(int j=0;j<n;j++){
fin>>c.x>>c.y>>c.z;
c.v=c.x*c.y*c.z;
p.push_back(c);
}
sort(p.begin(),p.end(),sortc);
for (int j=0;j<n;j++) a[j]=1;
for (int j=1;j<n;j++)
for(int k=0;k<j;k++)
if (incape(p[k],p[j]) && a[j]<=a[k]){
a[j]=a[k]+1;
mx = max(a[j],mx);
}
fout<<mx<<'\n';
mx=1;
p.clear();
}
return 0;
}