Pagini recente » Cod sursa (job #1181189) | Cod sursa (job #1719454) | Cod sursa (job #1749395) | Cod sursa (job #2683218) | Cod sursa (job #442899)
Cod sursa(job #442899)
#include<stdio.h>
#include<algorithm>
using namespace std;
struct dimensiuni{
int x; int y; int z;
};
int cmp (dimensiuni a, dimensiuni b){
return (a.z<b.z); //aici folosesti "<" daca il vrei crescator sau ">" daca il vrei descrescator;
}
int main()
{
freopen ("cutii.in", "r", stdin);
freopen ("cutii.out", "w", stdout);
int n, i, l[32000], max=0, j, t, balmush;
dimensiuni v[40000], a, b;
scanf("%d %d", &n, &t);
for(balmush=1; balmush<=t; balmush++){
for(i=1; i<=n; i++){
scanf("%d %d %d", &v[i].x, &v[i].y, &v[i].z);
}
sort (v+1, v+n+1, cmp);
l[1]=1;
for(i=2; i<=n; i++){
for(j=1; j<=i; j++){
if((v[j].x<v[i].x) && (v[j].y<v[i].y) && (v[j].z<v[i].z) && (l[j]>max)){
max=l[j];
}
}
l[i]=max+1;
max=0;
}
for(i=1; i<=n; i++){
if(l[i]>max){
max=l[i];
}
}
printf("%d\n", max);
max=0;
}
return 0;
}
/*#include<stdio.h>
struct dimensiuni{
int x; int y; int z;
};
int l[100];
int main()
{
freopen ("cuti.in", "r", stdin);
freopen ("cuti.out", "w", stdout);
int i, j, n, v[100], max=0;
scanf("%d ", &n);
for(i=1; i<=n; i++){
scanf("%d ", &v[i]);
}
l[1]=1;
for(i=2; i<=n; i++){
for(j=1; j<=i; j++){
if(v[j]<v[i] && l[j]>max){
max=l[j];
}
}
l[i]=max+1;
max=0;
}
for(i=1; i<=n; i++){
printf("%d ", l[i]);
}
return 0;
}
*/