Pagini recente » Cod sursa (job #601602) | Cod sursa (job #2609771) | Cod sursa (job #2749675) | Cod sursa (job #693961) | Cod sursa (job #808953)
Cod sursa(job #808953)
//Beiland Arnold - ciur 07.11.2012
#include <fstream>
#include <vector>
#include <cmath>
int main(){
std::ifstream fin("ciur.in");
std::ofstream fout("ciur.out");
unsigned int n,sqrtn;
fin>>n;
sqrtn=std::sqrt(n);
std::vector<bool> ciur(n,false);
unsigned int nr=1; //2 is prime
for(unsigned int i=3;i<=n;i+=2)
if(!ciur[i/2-1]){
++nr;
if(i<=sqrtn)
for(unsigned int j=i*i;j<=n;j+=2*i) ciur[j/2-1].flip();
}
fout<<nr<<'\n';
}