Cod sursa(job #1605539)
| Utilizator | Data | 19 februarie 2016 09:33:50 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.49 kb |
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
ifstream fin ("ciur.in");
ofstream fout ("ciur.out");
vector <int> primality;
int main()
{
int N;
fin >>N;
primality.resize(N+1);
for (int i = 2; i <= N; ++i)
primality[i] = 1;
int counter = 0;
for (int i = 2; i <= N; ++i)
if (primality[i])
{
++counter;
for (int j = i+i; j <= N; j+=i)
primality[j] = 0;
}
fout <<counter <<'\n';
return 0;
}
