Cod sursa(job #29330)

Utilizator th3whu2Breta Ionut th3whu2 Data 9 martie 2007 00:52:25
Problema Puteri Scor 40
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.94 kb
function cmmdc(a,b:longint):longint;
var r:longint;
begin
 r:=a mod b;
 while r>0 do
  begin
   a:=b;
   b:=r;
   r:= a mod b;
  end;
 cmmdc:=b;
end;
var f,g:text;
n,i,k,j,x,y,z,r:longint;
a,b,c:array[1..100000] of integer;
begin
assign(f,'puteri.in');reset(f);
assign(g,'puteri.out');rewrite(g);
read(f,n);
for i:=1 to n do
 read(f,a[i],b[i],c[i]);
k:=0;
for i:=1 to n-1 do
 for j:=i+1 to n do
  begin
   x:=a[i]+a[j];
   y:=b[i]+b[j];
   z:=c[i]+c[j];
   if (x<>0) and (y<>0) and (z=0) then if cmmdc(x,y)>1 then inc(k);
   if (x=0) and (y<>0) and (z<>0) then if cmmdc(y,z)>1 then inc(k);
   if (x<>0) and (y=0) and (z<>0) then if cmmdc(x,z)>1 then inc(k);
   if (x<>0) and (y<>0) and (z<>0) then if cmmdc(cmmdc(x,y),z)>1 then inc(k);
   if (x<>0) and (y=0) and (z=0) then inc(k);
   if (x=0) and (y<>0) and (z=0) then inc(k);
   if (x=0) and (y=0) and (z<>0) then inc(k);
  end;
write(g,k);
close(f);
close(g);
end.