Pagini recente » Rating Tuca Elvis-Costin (Elvis_Costin) | Cod sursa (job #2509589) | Cod sursa (job #1335006) | Cod sursa (job #706528) | Cod sursa (job #25079)
Cod sursa(job #25079)
function cmmdc(x,y:longint):longint;
var k,r:longint;
begin
k:=0;
while ((x and 1)=0)and((y and 1)=0) do
begin
x:=x div 2;
y:=y div 2;
inc(k);
end;
while y<>0 do
begin
r:=x mod y;
x:=y;
y:=r;
end;
cmmdc:=x shl k;
end;
var f:text;
n,i,j,p,o,ra,rad:longint;
a:array[1..100000,1..3] of byte;
nr:int64;
begin
assign(f,'puteri.in');
reset(f);
read(f,n);
for i:=1 to n do
read(f,a[i,1],a[i,2],a[i,3]);
close(f);
for i:=1 to n-1 do
for j:=i+1 to n do
begin
o:=a[i,1]+a[j,1];
p:=a[i,2]+a[j,2];
ra:=a[i,3]+a[j,3];
if o=0 then
begin
if (p=0)and(ra>1) then
nr:=nr+1
else
if (ra=0)and(p>1) then
nr:=nr+1
else
if (p>1)and(ra>1) then
if cmmdc(p,ra)<>1 then
nr:=nr+1;
end
else
if p=0 then
begin
if (ra=0)and(o>1) then
nr:=nr+1
else
if (ra>1)and(o>1) then
if cmmdc(ra,o)<>1 then
nr:=nr+1;
end
else
if ra=0 then
begin
if (o>1)and(p>1) then
if cmmdc(o,p)<>1 then
nr:=nr+1;
end
else
begin
if (o>1)and(p>1)and(ra>1) then
begin
rad:=cmmdc(o,p);
if cmmdc(rad,ra)<>1 then
nr:=nr+1
end;
end;
end;
assign(f,'puteri.out');
rewrite(f);
write(f,nr);
close(f);
end.