Cod sursa(job #169136)

Utilizator mariuscris90giuroiu marius mariuscris90 Data 1 aprilie 2008 11:27:08
Problema Fractii Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.82 kb
{$n+}   
program fractiii;   
type vector=array[1..2000000] of record  
                           x:boolean;   
                           l,k:longint;end;   
var a:vector;   
    n,z,i,j,p,p1:longint;   
    t:boolean;   
    s,s1,s2,s3:extended;   
    f,g:text;   
begin  
assign(f,'fractii.in');assign(g,'fractii.out');reset(f);rewrite(g);   
read(f,n);   
for i:=2 to n do begin  
z:=i;if a[i].x=false then begin a[i].l:=(i-1)*2;s1:=a[i].l; s:=s+s1;end  
                          else begin s1:=a[i].l;s2:=a[i].k;s3:=i;   
                 s:=s+(((s1*s3)/ s2)*2);end;   
while z<n do begin  
z:=z+i;   
a[z].x:=true;t:=true;   
if a[z].l=0 then begin a[z].l:=1;a[z].k:=1;end;   
if a[i].x=false then begin a[z].l:=a[z].l*(i-1);a[z].k:=a[z].k*i;end;   
end;end;   
s:=s+1;write(g,s:0:0);close(f);close(g);end.