Pagini recente » Cod sursa (job #707045) | Cod sursa (job #396301) | Cod sursa (job #791503) | Cod sursa (job #2308267) | Cod sursa (job #65238)
Cod sursa(job #65238)
var f1,f2:text;
n,t,i,j,k,max,aux:longint;
x,y,z,v:array[1..4000] of longint;
a:array[1..4000] of int64;
procedure pozitie(var m:longint; p,u:longint);
var i,j,di,dj,aux:longint;
begin
di:=0;
dj:=-1;
i:=p;
j:=u;
while i<j do
begin
if a[i]>a[j] then
begin
aux:=di;
di:=-dj;
dj:=-aux;
aux:=a[i];
a[i]:=a[j];
a[j]:=aux;
end;
i:=i+di;
j:=j+dj;
end;
m:=i;
end;
procedure quick(p,u:longint);
var m:longint;
begin
if p<u then
begin
pozitie(m,p,u);
quick(p,m-1);
quick(m+1,u);
end;
end;
begin
assign(f1,'cutii.in');
reset(f1);
assign(f2,'cutii.out');
rewrite(f2);
read(f1,n,t);
for k:=1 to t do
begin
for i:=1 to n do
begin
read(f1,x[i],y[i],z[i]);
a[i]:=x[i]*100000000+y[i]*10000+z[i];
end;
quick(1,n);
for i:=n downto 1 do
begin
max:=0;
for j:=i+1 to n do
begin
q:=a[i] div 100000000;
q1:=a[j] div 100000000;
w:=a[i] mod 100000000 div 10000;
w1:=a[j] mod 100000000 div 10000;
e:=a[i] mod 10000;
e1:=a[j] mod 10000;
if (q>q1)and(w>w1)and(e>e1)and(v[j]>max) then max:=v[j];
end;
v[i]:=max+1;
end;
max:=0;
for i:=1 to n do
begin
if max<v[i] then max:=v[i];
v[i]:=0;
end;
writeln(f2,max);
end;
close(f1);
close(f2);
end.