Pagini recente » Cod sursa (job #884705) | Cod sursa (job #872728) | Cod sursa (job #2780334) | Cod sursa (job #2206314) | Cod sursa (job #146906)
Cod sursa(job #146906)
#include<stdio.h>
int i, j, nr, q[1005], n;
char v[2000001];
inline int min(int a, int b){
if (a < b)
return a;
return b;
}
int main()
{
freopen("ciur.in", "rt", stdin);
freopen("ciur.out", "wt", stdout);
scanf("%d", &n);
for (i = 2; i*i <= n; i ++)
if (!v[i])
for (j = 2*i; j <= n; j += i)
v[j] = 1;
for (i = n; i > 1; i --)
if (!v[i]){
nr ++;
if (nr <= 1000)
q[nr] = i;
}
printf("%d\n", nr);
nr = min(1000, nr);
for (i = nr; i; i --)
printf("%d ", q[i]);
return 0;
}