Cod sursa(job #1110989)

Utilizator TimitocArdelean Andrei Timotei Timitoc Data 18 februarie 2014 15:53:43
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
///Determinarea tuturor numerelor prime mai mici sau egale cu un "n" dat;

#include <iostream>
#include <cstdio>
#include <bitset>

using namespace std;


bitset<2000020> a;
int prim[200000], n, nq;


int main()
{
    freopen("ciur.in", "r", stdin);
    freopen("ciur.out", "w", stdout);
    cin >> n;
    prim[nq++] = 2;
    for(int i=3; i<=n; i+=2){
        if(a[i] == 0)
            prim[nq++] = i;
        for(int j=i*i; j<=n; j+=2*i)
            a[j] = 1;
    }
    cout << nq << endl;
  //  for(int i=0; i<nq; i++)
    //    if(i!=0) cout << " " << prim[i];
      //  else     cout <<prim[i];
    return 0;
}