Pagini recente » Cod sursa (job #2319336) | Cod sursa (job #2441204) | Cod sursa (job #2472654) | Cod sursa (job #3267893) | Cod sursa (job #333281)
Cod sursa(job #333281)
#include <stdio.h>
#include<algorithm>
#define DIM 4000
using namespace std;
struct pct {
int x;
int y;
int z;
};
pct V[DIM];
int X[DIM];
int T[DIM];
int i,t,N,TT,m,p,u,mid;
int cmp(pct a, pct b) {
return a.x<b.x;
}
int main(){
FILE *f = fopen("cutii.in","r");
FILE *g = fopen("cutii.out","w");
fscanf(f,"%d %d",&N, &TT);
for (t=1;t<=TT;t++) {
for (i=1;i<=N;i++) {
fscanf(f, "%d %d %d", &V[i].x, &V[i].y, &V[i].z);
}
sort(V+1,V+N+1,cmp);
X[1] = 1; m = 1;
for (i=2;i<=N;i++) {
p = 1; u = m;
while (p<=u) {
mid = p+(u-p)/2;
if (V[X[mid]].y < V[i].y && V[X[mid]].z < V[i].z)
p = mid + 1;
else
u = mid - 1;
}
if (p>u) {
if (p>m)
m++;
X[p] = i;
T[i] = X[p-1];
}
}
fprintf(g,"%d\n",m);
}
fclose(f);
fclose(g);
return 0;
}