Pagini recente » Cod sursa (job #3351204) | Cod sursa (job #2476784) | Cod sursa (job #3355989) | Cod sursa (job #3314966) | Cod sursa (job #927328)
Cod sursa(job #927328)
#include <cstdio>
#include <bitset>
using namespace std;
int N, R = 0;
bitset<123> sir;
int main()
{
freopen("ciur.in", "r", stdin);
freopen("ciur.out", "w", stdout);
scanf("%d", &N);
sir.set();
int p = 2, i;
while ((p * p) <= N)
{
for (i = 2; (i * p) <= N; i++)
sir[i * p] = 0;
// 0 = nu e prim!
for (++p; (p * p) <= N; p++)
if (sir[p]) // Presupun ca e mai rapid decat !sir[p]... De aia am setat tot la 1 initial.
break;
}
for (i = 2; i < N; i++)
if (sir[i]) R++;
printf("%d", R);
return 0;
}