Cod sursa(job #2127895)

Utilizator klbraduRadu Capalb klbradu Data 11 februarie 2018 11:00:32
Problema Ciurul lui Eratosthenes Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.52 kb
#include <stdio.h>
#include <string.h>

int main() {
    int n, i, j, count = 0;
    char prim[2000005];
    memset(prim, 1, 2000005);
    FILE* input = fopen("ciur.in", "r");
    FILE* output = fopen("ciur.out", "w");
    fscanf(input, "%d", &n);

    for (i = 2; i <= n; i++) {
        if (prim[i] == 1) {
            count++;
            for (j = i * i; j <= n; j += i) {
                prim[j] = 0;
            }
        }
    }
    
    fprintf(output, "%d\n", count);

    fclose(input);
    fclose(output);

    return 0;
}