Pagini recente » Cod sursa (job #2736337) | Cod sursa (job #2712697) | Cod sursa (job #724030) | Cod sursa (job #630521) | Cod sursa (job #1171532)
#include <cstdio>
#include <algorithm>
using namespace std;
#define nMax 3505
struct Cutie {
int x, y, z;
bool operator < (const Cutie &A, const Cutie &B){
if(A.x != B.x)
return A.x < B.x;
if(A.y != B.y)
return A.y < B.y;
return A.z < B.z;
}
};
Cutie C[nMax];
int DP[nMax];
int N, T, BEST;
int main(){
freopen("cutii.in", "r", stdin);
freopen("cutii.out", "w", stdout);
for(scanf("%d %d", &N, &T); T; -- T){
for(int i = 0; i < N; ++ i)
scanf("%d %d %d", &C[i].x, &C[i].y, &C[i].z);
sort(C, C + N);
BEST = 1;
for(int i = 0; i < N; ++ i){
DP[i] = 1;
for(int j = 0; j < i; ++ j)
if(C[j] < C[i] && DP[j] + 1 > DP[i])
DP[i] = DP[j] + 1;
BEST = max(BEST, DP[i]);
}
printf("%d\n", BEST);
}
fclose(stdin);
fclose(stdout);
return 0;
}