Cod sursa(job #883523)
Utilizator | Seniuc Bogdan Bogdacutu | Data | 20 februarie 2013 08:45:36 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.65 kb |
#include <iostream>
#include <fstream>
using namespace std;
//#define CONSOLE
int main() {
unsigned long int n, i, j, c = 1;
#ifdef CONSOLE
cin>>n;
#else
ifstream fin("ciur.in");
ofstream fout("ciur.out");
fin>>n;
#endif
unsigned char numere[n];
for (i = 0; i <= n; i++) numere[i] = 0;
for (i = 3; i <= n; i = i + 2) {
if (numere[i-1] == 0) {
c++;
for (j = i*3; j <= n; j = j+i) {
numere[j-1] = 1;
}
}
}
#ifdef CONSOLE
cout<<c;
#else
fout<<c;
#endif
return 0;
}