Pagini recente » Cod sursa (job #1369108) | Cod sursa (job #16082) | Cod sursa (job #1798163) | Cod sursa (job #1662536) | Cod sursa (job #184181)
Cod sursa(job #184181)
var phi:array[2..1000000] of longint;
f,g:text;
i,j,n:longint;
sum:int64;
begin
assign(f,'fractii.in'); reset(f);
assign(g,'fractii.out'); rewrite(g);
read(f,n);
for i:=2 to n do
phi[i]:=i;
j:=2;
while (j<=n) do begin
phi[j]:=phi[j]-(phi[j] shr 1);
j:=j+2;
end;
{ for j:=1 to n shr 1 do
phi[j shl 1]:=phi[j shl 1]-(phi[j shl 1] shr 1);}
for i:=3 to n do
if phi[i]=i then begin
j:=i;
while (j<=n) do begin
phi[j]:=phi[j]-(phi[j] div i);
j:=j+i;
end;
end;
sum:=1;
for i:=2 to n do
sum:=sum+phi[i] shl 1;
writeln(g,sum);
close(f); close(g);
end.