Pagini recente » Cod sursa (job #2098092) | Cod sursa (job #1380579) | Cod sursa (job #3128470) | Cod sursa (job #1323497) | Cod sursa (job #159497)
Cod sursa(job #159497)
program pairs;
type vector=array[1..100000] of 0..1;
var v:vector;
r,n,x,a,b:int64;
i,j:longint;
f,g:text;
ciur:vector;
begin
assign(f,'pairs.in');
assign(g,'pairs.out');
rewrite(g);
reset(f);
read(f,n);
for i:= 1 to n do
read(f,v[i]);
x:=0;
{CIUR ERATOSTEN}
for i:=1 to n do
ciur[i]:=1;
for i:=2 to n div 2 do
for j:=2 to n div i do
ciur[i*j]:=0;
for i:=1 to n do
for j:=i+1 to n do
begin
begin
a:=v[i];
b:=v[j];
if (a mod 2=0) and (b mod 2=0) then x:=x
else
if (ciur[a]=1) and (ciur[b]=1) then x:=x+1
else
begin
repeat
r:=a mod b;
a:=b;
b:=r;
until r=0;
if a=1 then x:=x+1;
end;
end;
end;
write(g,x);
close(f);
close(g);
end.