Pagini recente » Cod sursa (job #1364202) | Cod sursa (job #3160218) | Cod sursa (job #2548483) | Cod sursa (job #1352166) | Cod sursa (job #2689413)
#include <fstream>
#include <cstring>
#define fq 3502
using namespace std;
ifstream fin("cutii.in");
ofstream fout("cutii.out");
int n,t,i,j;
int dp[fq],maxi;
struct box{
int x,y,z;
}v[fq];
bool compare(box a,box b){
return a.x>b.x && a.y>b.y && a.z>b.z;
}
int main()
{
fin>>n>>t;
while(t)
{
for(i=1; i<=n; i++)
fin>>v[i].x>>v[i].y>>v[i].z;
memset(dp,0,sizeof(dp));
dp[n]=1, maxi=0;
for(i=n-1; i>=1; i--)
{
for(j=i+1; j<=n; j++)
if(compare(v[j],v[i]) && dp[j]>maxi)
maxi=dp[j];
dp[i]=maxi+1;
maxi=0;
}
for(i=1; i<=n; i++)
maxi=max(maxi,dp[i]);
fout<<maxi<<'\n', t--;
}
return 0;
}