Pagini recente » Monitorul de evaluare | Cod sursa (job #1314595) | Cod sursa (job #488570) | Cod sursa (job #1662072) | Cod sursa (job #1785872)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
bool isPrime(const vector<long long> &a, const long long &N) {
for (int i = 0; i < a.size() && a[i]*a[i]<=N; i++) {
if (N%a[i] == 0) {
return false;
}
}
return true;
}
vector<long long> primeList(long long N) {
vector<long long> a;
a.push_back(2);
for (int i = 3; i <=N; i+=2) {
if (isPrime(a, i)) {
a.push_back(i);
}
}
return a;
}
int main() {
ifstream cin("ciur.in");
ofstream cout("ciur.out");
int n;
cin>>n;
vector <long long> a = primeList(n);
cout<<a.size();
return 0;
}