Pagini recente » Arhiva de probleme | Cod sursa (job #2447769) | Cod sursa (job #2154147) | Cod sursa (job #2642) | Cod sursa (job #2449989)
#include <bits/stdc++.h>
#define maxi 2000001
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
bool numere[maxi];
int rasp[maxi];
void ciur()
{
int i, j;
numere[1] = 1;
for(i = 4; i < maxi; i+=2)
numere[i] = 1;
for(i = 3; i < maxi; i+=2)
{
if(!numere[i])
{
j = 3;
while(i * j < maxi)
{
numere[i*j] = 1;
j++;
}
}
}
rasp[2] = 1;
for(i = 3; i < maxi; i++)
{
if(!numere[i])
{
rasp[i] = rasp[i-1] + 1;
}
else
rasp[i] = rasp[i-1];
}
}
int main()
{
int n;
ciur();
fin >> n;
fout << rasp[n];
return 0;
}