Cod sursa(job #2438573)

Utilizator Horia14Horia Banciu Horia14 Data 12 iulie 2019 19:32:27
Problema Ciurul lui Eratosthenes Scor 30
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.49 kb
#include<cstdio>
#define MAX_N 2000000

bool prim[MAX_N+1];
int n;

int main() {
    int i, j, cnt;
    FILE* fin, *fout;
    fin = fopen("ciur.in","r");
    fout = fopen("ciur.out","w");
    fscanf(fin,"%d",&n);
    cnt = 0;
    prim[0] = prim[1] = 1;
    for(i = 2; i <= n; i++) {
        if(prim[i] == 0) {
            cnt++;
            for(j = i * i; j <= n; j += i)
                prim[j] = 1;
        }
    }
    fprintf(fout,"%d\n",cnt);
    fclose(fin);
    fclose(fout);
    return 0;
}