Cod sursa(job #601775)

Utilizator Buzu_Tudor_RoCont vechi Buzu_Tudor_Ro Data 7 iulie 2011 20:44:22
Problema Fractii Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 1.19 kb
Program Fractii;
{uses dos;   }
var fi, fo : text;
    i,j,n,nr,r: longint;
    k:qword;
   { t1,t2:real;
    ore,minute,secunde,miimi : word;               }
Function CMMDC(a,b : longint):longint;
begin
      if a mod b = 0 then cmmdc:=b
                     else cmmdc:=cmmdc(b,a mod b);
end;
begin{ gettime(ore,minute,secunde,miimi);
      t1:=3600*ore+60*minute+secunde+0.01*miimi;   }
     assign(fi,'fractii.in'); reset(fi); readln(fi,n); close(fi);
     assign(fo,'fractii.out'); rewrite(fo); k:=0;  r:=1;
     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;
     {gettime(ore,minute,secunde,miimi);
      t2:=3600*ore+60*minute+secunde+0.01*miimi;   }
     writeln(fo,k); {writeln(fo,'timpul: ',t2-t1:5:4);}close(fo);
end.