Pagini recente » pebarbamea | Cod sursa (job #2255679) | Cod sursa (job #1031290) | Cod sursa (job #1815223) | Cod sursa (job #715869)
Cod sursa(job #715869)
#include<fstream>
#include<algorithm>
#define dim 3510
using namespace std;
ifstream f("cutii.in");
ofstream g("cutii.out");
int L[dim],n,t;
struct dm{
int x,y,z;
} v[dim];
struct cmp {
inline bool operator ()(const dm &a,const dm &b){
return a.z<b.z;
}
};
void solve(){
for(int i=1;i<=n;i++)
f>>v[i].x>>v[i].y>>v[i].z;
sort(v+1,v+1+n,cmp());
for(int i=1;i<=n;i++)
L[i]=1;
int maxu=1;
for(int i=n-1;i>=1;i--){
for(int j=i+1;j<=n;j++){
if(L[j]+1>L[i] && v[j].x>v[i].x && v[j].y>v[i].y && v[j].z>v[i].z){
L[i]=L[j]+1;
if(maxu<L[i])
maxu=L[i];
}
}
}
g<<maxu<<"\n";
}
int main (){
f>>n>>t;
for(;t;t--){
for(int i=1;i<=n;i++)
f>>v[i].x>>v[i].y>>v[i].z;
sort(v+1,v+1+n,cmp());
for(int i=1;i<=n;i++)
L[i]=1;
int maxu=1;
for(int i=n-1;i>=1;i--){
for(int j=i+1;j<=n;j++){
if(L[j]+1>L[i] && v[j].x>v[i].x && v[j].y>v[i].y && v[j].z>v[i].z){
L[i]=L[j]+1;
if(maxu<L[i])
maxu=L[i];
}
}
}
g<<maxu<<"\n";
}
return 0;
}