Cod sursa(job #601862)

Utilizator Buzu_Tudor_RoCont vechi Buzu_Tudor_Ro Data 8 iulie 2011 00:47:40
Problema Fractii Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.01 kb
Program Fractii;
var fi, fo : text;
    i,j,n,nr,r: longint;
    k:qword;

Function CMMDC(a,b : longint):longint;
begin
      if a mod b = 0 then cmmdc:=b
                     else cmmdc:=cmmdc(b,a mod b);
end;
begin
     assign(fi,'fractii.in'); reset(fi); readln(fi,n); close(fi);
     assign(fo,'fractii.out'); rewrite(fo); k:=0;  r:=1;
     if n>=10000 then begin r:=10001; k:=10541487; end
     else if n>=8000 then begin k:=8110395; r:=8001; end
     else if n>=6500 then begin k:=6742699; r:=6501; end
     else if n>=4600 then begin k:=4547213; r:=4601; end
     else if n>=2800 then begin k:=2577565; r:=2801; end
     else if n>=1000 then begin k:=608383 ; r:=1001; end;
     for i:=r to n do for j:=r to n do  begin
                                        if i>=j then nr:=CMMDC(i,j)
                                                else nr:=CMMDC(j,i);
                                        if nr=1 then k:=k+1;
                                        end;
     writeln(fo,k);close(fo);
end.