Cod sursa(job #249697)

Utilizator ioalexno1Alexandru Bunget ioalexno1 Data 28 ianuarie 2009 23:20:27
Problema Puteri Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 3.14 kb
program alex;
var f:text;
    a,b,c:array[1..100001]of integer;
    i,j,n,nr,e2,e3,e5,r:longint;
begin
assign(f,'puteri.in');reset(f);
readln(f,n);
for i:=1 to n do
    readln(f,a[i],b[i],c[i]);
close(f);
nr:=0;
for i:=1 to n-1 do
    begin
    for j:=i+1 to n do
        begin
        e2:=a[i]+a[j];
        e3:=b[i]+b[j];
        e5:=c[i]+c[j];
        if(e2=0)and(e3=0)and(e5>=2) then nr:=nr+1;
        if(e3=0)and(e5=0)and(e2>=2) then nr:=nr+1;
        if(e5=0)and(e2=0)and(e3>=2) then nr:=nr+1;
        if(e2<>0)and(e3<>0)and(e5=0)then begin
                                         r:=e2 mod e3;
                                         while r<>0 do
                                               begin
                                               e2:=e3;
                                               e3:=r;
                                               r:=e2 mod e3;
                                               end;
                                         if e3>=2 then nr:=nr+1;
                                         end;
        if(e5<>0)and(e3<>0)and(e2=0)then begin
                                         r:=e5 mod e3;
                                         while r<>0 do
                                               begin
                                               e5:=e3;
                                               e3:=r;
                                               r:=e5 mod e3;
                                               end;
                                         if e3>=2 then nr:=nr+1;
                                         end;
        if(e2<>0)and(e5<>0)and(e3=0)then begin
                                         r:=e2 mod e5;
                                         while r<>0 do
                                               begin
                                               e2:=e5;
                                               e5:=r;
                                               r:=e2 mod e5;
                                               end;
                                         if e5>=2 then nr:=nr+1;
                                         end;
        if(e2<>0)and(e3<>0)and(e5<>0)then begin
                                           r:=e2 mod e3;
                                         while r<>0 do
                                               begin
                                               e2:=e3;
                                               e3:=r;
                                               r:=e2 mod e3;
                                               end;
                                         r:=e5 mod e3;
                                         while r<>0 do
                                               begin
                                               e5:=e3;
                                               e3:=r;
                                               r:=e5 mod e3;
                                               end;
                                         if r<>0 then nr:=nr+1;
                                         end;
        end;
    end;
assign(f,'puteri.out');rewrite(f);
writeln(f,nr);
close(f);
end.