Cod sursa(job #57701)

Utilizator CristinatrifanTrifan Cristina Cristinatrifan Data 2 mai 2007 20:49:51
Problema Divizori Primi Scor 55
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.96 kb
var fi,fo:text;
    i,j,n,t,k:longint;
    nrdiv,prim:array[0..1000000]of integer;
begin
     assign(fi,'divprim.in'); reset(fi);
     assign(fo,'divprim.out'); rewrite(fo);
     i:=2;
     while i<=1000000 do
        begin
             j:=i;
             if prim[i]=0 then
                begin
                     nrdiv[i]:=1;
                     j:=j+i;
                     while j<=1000000 do
                        begin
                             prim[j]:=1;
                             nrdiv[j]:=nrdiv[j]+1;
                             inc(j,i);
                        end;
                end;
             inc(i);
        end;
     readln(fi,t);
     for i:=1 to t do
        begin
             read(fi,n,k);
             for j:=n downto 0 do begin
                if nrdiv[j]=k then begin writeln(fo,j); break; end;
                if j=0 then writeln(fo,'0');
             end;
        end;
     close(fi);
     close(fo);
end.