Cod sursa(job #1011581)
Utilizator | andrei sulzandrei | Data | 16 octombrie 2013 23:05:26 |
---|---|---|---|
Problema | Fractii | Scor | 30 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.46 kb |
program fac;
var f:text;
n,i,j,nr:longint;
phi:array[1..1000000] of int64;
begin
assign(f,'fractii.in'); reset(f);
readln(f,n);
close(f);
for i:=1 to n do
phi[i]:=i;
nr:=1;
for i:=2 to n do begin
if phi[i]=i then begin
j:=i;
while j<=n do begin
phi[j]:=phi[j] div i *(i-1);
inc(j,i);
end;
end;
nr:=nr+2*phi[i];
end;
assign(f,'fractii.out'); rewrite(f);
writeln(f,nr);
close(f);
end.