Pagini recente » Cod sursa (job #111682) | Cod sursa (job #782361) | Cod sursa (job #710300) | Cod sursa (job #242797) | Cod sursa (job #1913959)
#include <cstdio>
using namespace std;
const int NMAX = 1 << 17;
int a,b,n,k,N,cnt;
//int N, i, j, i2, nrprime = 0;
unsigned char V[NMAX];
bool prim[2000005];
FILE *f=fopen("ciur.in","r");
FILE *g=fopen("ciur.out", "w");
int main()
{
/**fscanf(f, "%d", &n);
k=1<<n;
for(int i=1; i<k; ++i)
{
fprintf(g,"{");
for(int j=0; j<n; ++j)
if((i>>j)&1)fprintf(g, "%d ", j+1);
fprintf(g,"}\n");
}
fclose(f);
fclose(g);**/
fscanf(f,"%d", &N);
for (int i = 2; i <= N; ++i)
prim[i] = 1;
for (int i = 2; i <= N; ++i)
if (prim[i])
{
++cnt;
for (int j = i+i; j <= N; j += i)
prim[j] = 0;
}
fprintf(g,"%d\n", cnt);
/**fscanf(f,"%d", &N);
for (i = 3; i <= N; i += 2) {
if (V[i >> 4] & (1 << ((i >> 1) & 7))) continue;
++nrprime;
for (j = i + (i2 = i + i); j <= N; j += i2)
V[j >> 4] |= 1 << ((j >> 1) & 7);
}
fprintf(g,"%d\n", nrprime + 1);**/
return 0;
}