Pagini recente » Cod sursa (job #2162529) | Cod sursa (job #398578) | Cod sursa (job #769425) | Cod sursa (job #2444610) | Cod sursa (job #45553)
Cod sursa(job #45553)
type pelem = ^elem;
elem = record
x: longint;
os: pelem;
end;
var
Osok: array[1..250000] of pelem;
akt: longint;
f, g: text;
n, m, i, a, b: longint;
begin
Assign(f, 'stramosi.in');
Assign(g, 'stramosi.out');
Reset(f);
ReWrite(g);
ReadLn(f, n, m);
for i := 1 to n do New(Osok[i]);
for i := 1 to n do
begin
Read(f, a);
if a <> 0 then Osok[i]^.os := Osok[a]
else Osok[i]^.os := NIL;
Osok[i]^.x := i;
end;
for i := 1 to m do
begin
ReadLn(f, a, b);
akt := Osok[a]^.x;
n := 1;
while (n <> b) and (Osok[akt]^.os <> NIL) do
begin
Inc(n);
akt := Osok[akt]^.os^.x;
end;
if Osok[akt]^.os <> NIL then akt := Osok[akt]^.os^.x else akt := 0;
WriteLn(g, akt);
end;
Close(f);
Close(g);
end.