Pagini recente » Cod sursa (job #1100765) | Cod sursa (job #1492067) | Cod sursa (job #626755) | Cod sursa (job #742702) | Cod sursa (job #105245)
Cod sursa(job #105245)
var a,b,n,i,j,k,tt,nmax:longint;
ind,id,v,max,nrmax,x,y,t:array[0..100000]of longint;
procedure df(nod:longint);
var i,j:longint;
begin
for i:=ind[nod]+1 to ind[nod+1] do
begin
df(v[i]);
if t[v[i]]=max[nod] then
inc(nrmax[nod]);
if t[v[i]]>max[nod] then
begin
max[nod]:=t[v[i]];
nrmax[nod]:=1;
end;
end;
t[nod]:=max[nod]+nrmax[nod];
end;
begin
assign(input,'zvon.in');reset(input);
assign(output,'zvon.out');rewrite(output);
readln(tt);
for k:=1 to tt do
begin
readln(n);
for i:=2 to n do
begin
readln(x[i],y[i]);
inc(ind[x[i]]);
end;
for i:=2 to n do
ind[i]:=ind[i-1]+ind[i];
for i:=n downto 1 do
ind[i]:=ind[i-1];
for i:=2 to n do
begin
inc(id[x[i]]);
v[ind[x[i]]+id[x[i]]]:=y[i];
end;
ind[n+1]:=ind[n]+id[n];
if n<>1 then
df(1);
writeln(t[1]);
for i:=0 to 100000 do
begin
max[i]:=0;
nrmax[i]:=0;
v[i]:=0;
ind[i]:=0;
id[i]:=0;
end;
end;
end.