Cod sursa(job #2090897)

Utilizator Teodor.mTeodor Marchitan Teodor.m Data 18 decembrie 2017 20:22:40
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.5 kb
#include <bits/stdc++.h>
 
using namespace std;
 
ifstream fin("ciur.in");
ofstream fout("ciur.out");
 
const int NMax = 2e6 + 5;
bool viz[NMax];
 
int Ciur(int n)
{
    int k = 1;
 
    for(int i = 4; i <= n; i += 2)
        viz[i] = true;
 
    for(int i = 3; i <= n; i += 2) {
        if(viz[i] == false) {
            k++;
            for(int j = 2 * i; j <= n; j += i)
                viz[j] = true;
        }
    }
     
    return k;
}
 
int main()
{
  int n;
  fin >> n;
  fout << Ciur(n);
  return 0;
}