Cod sursa(job #2236543)

Utilizator Horia14Horia Banciu Horia14 Data 29 august 2018 21:01:56
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<cstdio>
#define MAX_N 2000000
using namespace std;

bool isPrime[MAX_N+1];

int ciur(int n) {
    int cnt = 0;
    for(int i = 2; i <= n; i++) {
        if(!isPrime[i]) {
            //printf("%d ",i);
            for(int j = 2*i; j <= n; j += i)
                isPrime[j] = 1;
            ++cnt;
        }
    }
    return cnt;
}

int main() {
    int n;
    FILE* fin, *fout;
    fin = fopen("ciur.in","r");
    fout = fopen("ciur.out","w");
    fscanf(fin,"%d",&n);
    fprintf(fout,"%d\n",ciur(n));
    fclose(fin);
    fclose(fout);
    return 0;
}