Cod sursa(job #1012495)
Utilizator | Amegica Dayanna Dayanna000 | Data | 19 octombrie 2013 10:27:33 |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 20 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.59 kb |
#include <iostream>
#include <fstream>
#include <bitset>
using namespace std;
bitset <2000000> b;
int main()
{
b[1]=1;
long n,i,j,x;
ifstream f("ciur.in");
ofstream g("ciur.out");
f>>n;
i=2;
while(i<=n)
{
for(j=i+1;j<=n;j++)
if(j%i==0)
b[j]=1;
x=i;
for(j=i+1;j<=n;j++)
if(b[j]==0)
{
i=j;
j=n+1;
}
if(x==i)
i=n+1;
}
g<<n-b.count();
f.close();
g.close();
return 0;
}