Cod sursa(job #150586)
Utilizator | Muresan Tudor smecheru_tudy | Data | 7 martie 2008 07:50:49 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.46 kb |
var v:array[1..2000000]of byte;
n,i,j,k:longint;
begin
assign(input,'ciur.in');reset(input);
assign(output,'ciur.out');rewrite(output);
readln(n);
for i:=2 to trunc(sqrt(n)) do
if v[i]=0 then begin
for j:=2 to n div i do v[i*j]:=1;end; j:=0;
writeln(k);
for i:=n downto 2 do
if v[i]=0 then begin
inc(j);
if j=1000 then break; i:=k;
end;
writeln(j);
for i:=k to n do if v[i]=0 then write(i,' ');
close(input);close(output);
end.