Cod sursa(job #1017138)

Utilizator andrei8055Andrei andrei8055 Data 27 octombrie 2013 12:28:49
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include<fstream>
#include<vector>
#include<algorithm>
#include<cmath>
 
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
int n;
 
 
int getPrimes()
{
 n++;
  std::vector<bool> vec(n);
  std::fill( vec.begin(), vec.end(), true );
   for(int i=2;i<sqrt(n);i++){
    if(vec[i]){
      for(long j=i*i;j<=n;j+=i){
       vec[j]=false;
      }
     }
    }
 
 int result =0;
 for(int i=2;i<n;i++){
  if(vec[i])
    result++;
 }
return result;
}
 
int main()
{
f>>n;
g<<getPrimes();
 
return 0;
}