Cod sursa(job #2075916)
| Utilizator | Data | 25 noiembrie 2017 20:39:02 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | dopaj_maxim | Marime | 0.58 kb |
#include <bits/stdc++.h>
#define MaxN 100005
#define INF 2140000000
#define MOD 1999999973
using namespace std;
FILE*IN,*OUT;
int N,Ans=0;
bool p[MaxN];
int Sieve(int L)
{
Ans++;
for(int i=2;i<=L;i+=2)
p[i]=1;
for(int i=3;i<=L;i++)
{
if(!p[i])
{
Ans++;
for(int j=i*i;j<=L;j+=2*i)
p[j]=1;
}
}
}
int main()
{
IN=fopen("ciur.in","r");
OUT=fopen("ciur.out","w");
fscanf(IN,"%d",&N);
Sieve(N);
fprintf(OUT,"%d\n",Ans);
return 0;
}
