Cod sursa(job #1988480)

Utilizator adriananicolaeAdriana Nicolae adriananicolae Data 3 iunie 2017 09:49:37
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include <bits/stdc++.h>
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
int n,k;
const int Nmax=20000001;
bitset<Nmax>v;


int main()
{
    f>>n;
    for(int i=3;i<=1415;i+=2)
    {
        if(!v[(i-1)/2])
        {
            int j=i;
            
            while(i*j<n)
            {
                
                v[(i*j-1)/2]=true;
                j+=2;
            }
            
        }
    }
    for(int i=1;i<n/2;i++)
        if(!v[i])
            k++;
    //g<<i<<"="<<v[i]<<"="<<2*i+1<<" ";
    g<<++k;
    return 0;
}