Cod sursa(job #1207960)

Utilizator valen.valentinValentin Valeanu valen.valentin Data 14 iulie 2014 13:07:53
Problema Fractii Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.58 kb
program fractie;
var
a:array[1..1000000] of boolean;
t:array[1..1000000] of int64;
n,i,j,k,l:longint;
f1,f2:text;
sum:int64;
begin
assign(f1,'fractii.in');
reset(f1);
assign(f2,'fractii.out');
rewrite(f2);
readln(f1,n);
a[1]:=true;
for i:=1 to n do
if not a[i] then
begin
j:=i;
while j+i<=n do begin
j:=j+i;
a[j]:=true;
end; end;
sum:=1;
for i:=2 to n do t[i]:=i;
for i:=2 to n do
if a[i]=false then begin
j:=i;
while j<=n do begin
t[j]:=(t[j] div i)*(i-1);
j:=j+i;
end;
end;
for i:=2 to n do
sum:=sum+2*t[i];
writeln(f2,sum);
close(f1);
close(f2);
end.