Cod sursa(job #2253153)
| Utilizator | Data | 3 octombrie 2018 18:21:05 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.46 kb |
#include <iostream>
#include <fstream>
bool v[2000001];
using namespace std;
ifstream fin("ciur.in");
ofstream fout("ciur.out");
void ciur(int);
int main()
{
int n,ct=1;
fin>>n;
ciur(n);
for(int i=1; i<=n; i+=2)
if(v[i]==0)
ct++;
fout<<ct;
return 0;
}
void ciur(int n)
{
int i,j;
v[1]=1;
for (i=4;i<=n;i+=2) v[i]=1;
for (i=3;i*i<=n;i+=2)
for (j=i;i*j<=n;++j) v[i*j]=1;
}
