Cod sursa(job #25545)

Utilizator petrePajarcu Alexandru-Petrisor petre Data 4 martie 2007 12:54:16
Problema Balanta Scor 10
Compilator fpc Status done
Runda preONI 2007, Runda 3, Clasa a 10-a Marime 1.49 kb
var f,g:text;
x,y:array[1..1024] of boolean;
a,b:array[1..1024] of longint;
nr1,nr2,poz1,poz2,
n,i,j,k,l,m:longint;
begin
assign(f,'balanta.in');
reset(F);
assign(g,'balanta.out');
rewrite(G);
readln(f,n,m);
for i:=1 to n do
    begin
    x[i]:=true;
    y[i]:=true;
    end;
for l:=1 to  m do
begin
read(f,k);
for i:=1 to k do
         read(f,a[i]);
for i:=1 to k do
    read(f,b[i]);
read(f,j);
if j=0 then
       for i:=1 to  k do
           begin
           x[b[i]]:=false;
           x[a[i]]:=false;
           y[a[i]]:=false;
           y[b[i]]:=false;
           end
       else
           if j=1 then
                  for i:=1 to k do
                  begin
                  x[a[i]]:=true;
                  x[b[i]]:=false;
                  y[b[i]]:=true;
                  y[a[i]]:=false;
                  end
                  else
                  for i:=1 to k do
                      begin
                      x[a[i]]:=false;  x[b[i]]:=true;
                      y[b[i]]:=false;  y[a[i]]:=true;
                      end;
       end;
nr1:=0;
for i:=1 to n do
    if x[i] then begin
                 nr1:=nr1+1;
                 poz1:=i;
                 end;
nr2:=0;
for i:=1 to n do
    if y[i] then
            begin
            nr2:=nr2+1;
            poz2:=i;
            end;
if nr1=1 then
         writeln(g,poz1)
         else if nr2=1 then
                 writeln(g,poz2)
         else writeln(g,0);
close(F);
close(G);
end.