Pagini recente » Piezișă | Cod sursa (job #2650292)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream f ("cutii.in");
ofstream g ("cutii.out");
struct cutie {
int x, y, z;
}v[3505];
int n, t, rez;
int sol[3505];
bool Check (int i, int j)
{
if (v[i].x >= v[j].x)
return false;
if (v[i].y >= v[j].y)
return false;
if (v[i].z >= v[j].z)
return false;
return true;
}
int main()
{
f >> n >> t;
while (t --)
{
for (int i=1; i<=n; i++)
{
f >> v[i].x;
f >> v[i].y;
f >> v[i].z;
}
for (int i=1; i<=n; i++)
sol[i] = 1;
for (int i=2; i<=n; i++)
{
for (int j=1; j<i; j++)
{
if (Check(j, i))
{
int aux = sol[j] + 1;
if (aux > sol[i])
sol[i] = aux;
}
}
}
rez = 0;
for (int i=1; i<=n; i++)
rez = max(rez, sol[i]);
g << rez << "\n";
}
return 0;
}