Cod sursa(job #2201787)
Utilizator | Data | 6 mai 2018 01:20:15 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 40 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
int n,nr,b,a,v[2000001];
ifstream f("ciur.in");
ofstream g("ciur.out");
int main(){
f>>n;
a=sqrt(n);
for(int i=2;i<=a;i++){
b=i*i;
while(b<=n){
if(v[b]==0){
v[b]=1;
nr++;
}
b=b+i;
}
}
g<<n-nr-1;
f.close();
g.close();
return 0;
}