Pagini recente » Cod sursa (job #2963440) | Cod sursa (job #150040) | Cod sursa (job #1428880) | Cod sursa (job #138554) | Cod sursa (job #403959)
Cod sursa(job #403959)
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
struct cut {
int x; int y; int z;
};
int cmp (cut a, cut b)
{
return (a.x<b.x);
}
int main ()
{
freopen("cutii.in", "r", stdin);
freopen("cutii.out", "w", stdout);
int n, t, q, i, j, max, l[3501];
cut v[3501];
scanf("%d %d", &n, &t);
for (q=1; q<=t; q++) {
memset(l, 0, sizeof(l));
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++) {
max=0;
for (j=1; j<i; j++) {
if ((v[j].y < v[i].y) && (v[j].z < v[i].z) && l[j]>max) {
max=l[j];
}
}
l[i]=max + 1;
}
max=l[1];
for (i=1; i<=n; i++) {
if (l[i]>=max) {
max=l[i];
}
}
printf("%d\n", max);
/*
for (i=1; i<=n; i++) {
printf("%d ", l[i]);
}
for (i=1; i<=n; i++) {
printf("\n%d %d %d", v[i].x, v[i].y, v[i].z);
}
*/
}
return 0;
}