Pagini recente » Monitorul de evaluare | Cod sursa (job #1713638) | Cod sursa (job #2174539) | Cod sursa (job #2375699) | Cod sursa (job #1446891)
#include <iostream>
#include <fstream>
#include <cstring>
#include <iomanip>
#include <algorithm>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
const long long MAX = 2000000;
long long numar;
int vector[MAX];
void mark(int vector[], long long numar)
{
for(int i = 2; i*i <= numar; i++)
{
if(vector[i] == 0)
for(int j = i*i; j <= numar; j=j+i)
vector[j] = 1;
}
}
int main()
{
fin >> numar;
mark(vector, numar);
long long sum = 0;
for(long long i = 2; i <= numar; i++)
if(vector[i] == 0) sum++;
fout << sum;
return 0;
}