Cod sursa(job #2409380)
| Utilizator | Data | 18 aprilie 2019 22:46:02 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.43 kb |
#include<iostream>
#include<fstream>
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
const int NMAX=2000001;
char a[NMAX];
int N;
int main(){
fin>>N;
for(int i=0;i<=N;i++)
a[i]=0;
a[0]=a[1]=1;
for(int i=2;i*i<=N;i++)
if(a[i]==0)
for(int j=2;j<=N/i;j++)
a[i*j]=1;
int total=0;
for(int i=1;i<=N;i++)
if(a[i]==0)
total++;
fout<<total;
fin.close();
fout.close();
return 0;}
