Cod sursa(job #766098)
| Utilizator | Data | 10 iulie 2012 12:25:34 | |
|---|---|---|---|
| Problema | Fractii | Scor | 90 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 0.35 kb |
var a:array[1..1000000]of int64; n,s,j:int64; i:longint;f:text;
begin
assign(f,'fractii.in');reset(f);
read(f,n);
s:=1;a[2]:=1; assign(f,'fractii.out'); rewrite(f);
for i:=2 to n do begin if a[i]=0 then a[i]:=i-1; s:=s+2*a[i]; j:=2*i; while j<=n do begin if a[j]=0 then a[j]:=j-1-a[i] else a[j]:=a[j]-a[i]; j:=j+i end; end;
writeln(f,s); close(f);
end.