Cod sursa(job #1108411)
| Utilizator | Data | 15 februarie 2014 17:29:46 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.44 kb |
#include<iostream>
#include<fstream>
#define Nmax 2000001
using namespace std;
int main() {
ifstream f("ciur.in");
ofstream g("ciur.out");
long N;
long nr = 0;
f >> N;
bool V[Nmax];
for ( int i = 2; i <= N; i++ ) {
V[i] = true;
}
for ( int i = 2; i <= N; i++ ) {
if ( V[i] ) {
nr ++;
for ( int j = i + i; j <= N; j += i ) {
V[j] = false;
}
}
}
g << nr;
f.close();
g.close();
return 0;
}