program mafiani; const N=42; {maximální velikost mafie} var i,j,m:integer; pevnost,zna:boolean; mafie:array [2..N,1..N] of boolean; {matice vztahů} vstup:text; begin assign(vstup,'vstup.txt'); reset(vstup); for i:=2 to N do for j:=1 to N do mafie[i,j]:=FALSE; pevnost:=TRUE; i:=2; while pevnost and not EOF(vstup) do begin repeat {pro každého mafiána načteme jeho známé} read(vstup,m); mafie[i,m]:=TRUE; until EOLN(vstup); if (m<>1)then begin zna:=TRUE; for j:=1 to m-1 do {kontrola pevnosti vztahů nového mafiána} if mafie[i,j] and not mafie[m,j] then begin zna:=FALSE; break; end; end; if (m<>1) and not zna then pevnost:=FALSE; i:=i+1; end; if not pevnost then writeln(i-1,'-tý mafián je slabým článkem.') else writeln('Mafie nemá slabý článek.'); readln; close(vstup); end.