Cod sursa(job #2884604)
Utilizator | Data | 4 aprilie 2022 12:17:42 | |
---|---|---|---|
Problema | Ciurul lui Eratosthenes | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.38 kb |
#include <fstream>
#include <iostream>
using namespace std;
ifstream f("ciur.in");
ofstream g("ciur.out");
int v[200001];
int main()
{
int n,i,j,i2,nr=0;
cin>>n;
for(int i=3; i<=n; i+=2){
if(v[i>>4]&(1<<((i>>1)&7))) continue;
++nr;
for(j=i+(i2=i+i); j<=n; j+=i2)
v[j>>4]|=1<<((j>>1)&7);
}
cout<<nr+1;
}