Pagini recente » Cod sursa (job #1295344) | Cod sursa (job #2382855) | Cod sursa (job #272519) | Cod sursa (job #2429956) | Cod sursa (job #818841)
Cod sursa(job #818841)
#include <iostream>
#include <fstream>
#include <algorithm>
#include <vector>
#include <set>
#include <map>
#include <cmath>
#include <iomanip>
#include <string>
#include <cstring>
#include <deque>
#include <stack>
#include <bitset>
#include <list>
#define pb push_back
#define pf push_front
#define pob pop_back
#define pof pop_front
#define mp(a,b) make_pair (a, b)
#define ll long long
#define max(a, b) (a > b ? a : b)
#define min(a, b) (a < b ? a : b)
using namespace std;
bitset <2000001> ciur;
int main ()
{
ifstream fin ("ciur.in");
ofstream fout ("ciur.out");
int N;
fin >> N;
fin.close ();
ciur[0] = 1;
ciur[1] = 1;
for (int i = 3; i * i <= N; i += 2)
{
if (!ciur[i])
{
for (int j = i * i; j <= N; j += i)
ciur[j] = 1;
}
}
int cnt;
if (N >= 2) cnt = 1;
else cnt = 0;
for (int i = 3; i <= N; i += 2)
if (!ciur[i]) cnt++;
fout << cnt;
fout.close ();
return 0;
}