Pagini recente » Cod sursa (job #3250853) | Cod sursa (job #3263709) | Cod sursa (job #720861) | Cod sursa (job #693765) | Cod sursa (job #481878)
Cod sursa(job #481878)
#include<fstream>
#include<iostream>
#include<vector>
#include<bitset>
using namespace std;
int main()
{
long long n,num=0;
fstream fin("ciur.in", fstream::in);
fstream fout("ciur.out", fstream::out);
fin>>n;
//cout<<n<<endl;
//ector<char> v;
//v.resize(n+1);
bitset<2000002> bits;
//for(int j=0; j<n; j++)
// bits[j]=0;
//v[4]=1;
for(int j=4; j<n; j+=2)
bits[j]=1;
for(int i=3; i<n; i+=2)
{
//cout<<(char)(v[i]+48)<<" ";
if(i*i>n)
break;
if(!bits[i])
{
for(long long j=i*i; j<n; j+=i)
{
bits[j]=1;
}
}
}
for(int i=2; i<n; ++i)
{
if(!bits[i])
{
num++;
//cout<<i<<" ";
}
}
fout<<num<<endl;
//cout<<endl<<num<<endl;
fin.close();
fout.close();
return 0;
}