Cod sursa(job #147179)
Utilizator | Data | 2 martie 2008 17:40:55 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | fpc | Status | done |
Runda | Arhiva educationala | Marime | 0.71 kb |
var v:array[0..2000001]of boolean;
p:array[1..1024]of longint;
n,j,k,u,i:longint;
f:text;
begin
assign(f,'ciur.in');
reset(f);
read(f,n);
close(f);
for i:=2 to n do
if not v[i] then begin j:=i;
while j<n do
begin
j:=j+i;
v[j]:=true;
end;
end;
i:=n+1;
repeat
i:=i-1;
if not v[i] then begin u:=u+1;
p[u]:=i;
end;
until(i=2)or(u=1000);
assign(f,'ciur.out');
rewrite(f);
writeln(f,u);
for i:=u downto 1 do
write(f,p[i],' ');
writeln(f);
close(f);
end.