Pagini recente » Borderou de evaluare (job #2217963) | Cod sursa (job #748875) | Cod sursa (job #2559220) | Cod sursa (job #2883922) | Cod sursa (job #241078)
Cod sursa(job #241078)
program fractii;
var f,g:text;
p:array[1..1000000]of longint;
n,x,ci,cj,c,s,i,j:longint;
begin
assign(f,'fractii.in');
assign(g,'fractii.out');
reset(f);
rewrite(g);
read(f,n);
for i:=2 to n do
begin
x:=2;
while(i*x<=n)do
begin
p[i*x]:=1;
x:=x+1;
end;
end;
s:=s+(n-1)*2+1;
for i:=2 to n do begin
if(p[i]=0)then
begin
c:=i-2;
s:=s+c*2;
for j:=i to n do
if(j mod i<>0)and(p[j]<>0)then s:=s+2;
end;
if(p[i]<>0) then
for j:=i to n do
if(p[j]<>0)then begin
ci:=i;
cj:=j;
while(ci<>cj)do
if(ci>cj)then ci:=ci-cj
else cj:=cj-ci;
if(ci=1)then s:=s+2;
end;
end;
write(g,s);
close(f);
close(g);
end.