Pagini recente » Cod sursa (job #1533651) | Cod sursa (job #612207) | Cod sursa (job #2305855) | Cod sursa (job #2264504) | Cod sursa (job #2244184)
#include <stdio.h>
#include <iostream>
#include <fstream>
#include <vector>
#include <array>
#include <algorithm>
#include <vector>
#include <stack>
#include <set>
#include <assert.h>
#include <queue>
using LL = long long;
using ULL = int long long;
const std::string _problemName = "ciur";
namespace std {
std::ifstream fin(_problemName + ".in");
std::ofstream fout(_problemName + ".out");
}
#define USE_FILES
#ifdef USE_FILES
#define cin fin
#define cout fout
#endif
int main() {
int n;
std::cin >> n;
int primesCount = 1;
std::vector<int_fast8_t> sleve(n + 1);
int prime;
for (prime = 3; prime * prime <= n; prime += 2) {
if (sleve[prime]) {
continue;
}
++primesCount;
for (int multiple = prime * prime; multiple <= n; multiple += prime) {
sleve[multiple] = true;
}
}
for (; prime <= n; prime += 2) {
primesCount += (sleve[prime] == 0);
}
std::cout << primesCount << '\n';
return 0;
}