Cod sursa(job #2403833)
| Utilizator | Data | 11 aprilie 2019 21:54:18 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.61 kb |
#include <bits/stdc++.h>
using namespace std;
#define IN "ciur.in"
#define OUT "ciur.out"
int main()
{
ifstream fin(IN);
ofstream fout(OUT);
int N;
fin>>N; //am citit numarul
int A[N+1]; //am intializat vecto
for(int i=2;i<=N;++i) A[i]=0; //bag toate numerele de la 0pana la n inclusiv in ciur
int nc=0;
for(int i=2;i<N;++i)
{
if(A[i] == 0)
{
++nc;
int p=2;
while(i*p<=N)
{
A[i*p] = 1;
++p;
}
}
}
fout<<nc;
return 0;
}
