Pagini recente » Cod sursa (job #1077262) | Cod sursa (job #292896) | Cod sursa (job #725908) | Cod sursa (job #1793762) | Cod sursa (job #144988)
Cod sursa(job #144988)
#include <stdio.h>
int n, prime[150001], cnt;
bool v[2000001];
inline int max(int a, int b)
{
if(a > b)
return a;
return b;
}
int main()
{
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
int i, j;
scanf("%d", &n);
for(i = 2; i <= n; ++i)
{
if(!v[i])
{
prime[++cnt] = i;
for(j = 2 * i; j <= n; j += i)
{
v[j] = 1;
}
}
}
printf("%d\n", cnt);
for(i = max(cnt - 1000 + 1, 1); i <= cnt; ++i)
{
printf("%d ", prime[i]);
}
return 0;
}