Cod sursa(job #26524)

Utilizator cheery_g1rlHaller Emanuela cheery_g1rl Data 5 martie 2007 18:14:58
Problema Balanta Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.49 kb
program balanta;
var f,ff:text;
   i,c,j,k,r,n,m:integer;
   u,g:array[1..1024] of 0..1;
   a,b:array[1..1024] of 1..1024;
begin
assign(f,'balanta.in');
reset(f);
readln(f,n,m);
for i:=1 to n do begin g[i]:=0; u[i]:=0; end;
for i:=1 to m do
  begin
    read(f,k);
    for j:=1 to k do read(f,a[j]);
    for j:=1 to k do read(f,b[j]);
    readln(f,r);
    if r=1 then
      begin
        for j:=1 to k do begin inc(g[a[j]]){:=1;  u[a[j]]:=0; }end;
        for j:=1 to k do begin inc(u[b[j]]){:=1;  g[b[j]]:=0; }end;
      end
         else if r=2 then
           begin
             for j:=1 to k do begin inc(g[b[j]]){:=1; u[b[j]]:=0; }end;
             for j:=1 to k do begin inc(u[a[j]]){:=1; g[a[j]]:=0; }end;
           end
       {    else if r=0 then
                for j:=1 to k do begin u[a[j]]:=0; g[b[j]]:=0; g[a[j]]:=0; u[b[j]]:=0; end;}


  end;
close(f);
assign(ff,'balanta.out');
rewrite(ff);
{c:=0; for i:=1 to n do if g[i]=1 then  begin inc(c); j:=i; end;
if c=1 then writeln(ff,j)
   else
     begin
       c:=0; for i:=1 to n do if u[i]=1 then begin inc(c); j:=i; end;
       if c=1 then writeln(ff,j)
         else writeln(ff,'0');
     end;}
     k:=n div 2;
     c:=0; for i:=1 to n do if u[i]>k then begin inc(c); j:=i; end;
     if c=1 then writeln(ff,j)
       else
        begin
          c:=0; for i:=1 to n do if g[i]>k then begin inc(c); j:=i; end;
          if c=1 then writeln(ff,j)
            else writeln(ff,'0');
        end;
close(ff);
end.