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