Pagini recente » Cod sursa (job #2293221) | Cod sursa (job #1132221) | Cod sursa (job #851442) | Cod sursa (job #2483702) | Cod sursa (job #3273804)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("cutii.in");
ofstream out("cutii.out");
const int NMAX = 3500;
struct ura{
int x, y, z;
}v[NMAX];
int dp[NMAX];
bool cmp(ura a, ura b){
if(a.x == b.x){
if(a.y == b.y){
return a.z < b.z;
}
return a.y < b.y;
}
return a.x < b.x;
}
bool mere(ura a, ura b){
if(a.y <b.y && a.z < b.z){
return true;
}
return false;
}
int main(){
int n, t;
in>>n>>t;
while(t--){
for(int i = 0;i<n;i++){
in>>v[i].x>>v[i].y>>v[i].z;
}
int maxi = 0;
sort(v, v + n, cmp);
for(int i = 0;i<n;i++){
dp[i] = 1;
for(int j = 0;j<i;j++){
if(mere(v[j], v[i])){
dp[i] = max(dp[i], dp[j] + 1);
}
}
maxi = max(maxi, dp[i]);
}
out<<maxi<<"\n";
}
return 0;
}