Cod sursa(job #1587129)

Utilizator andreibotilaBotila Andrei andreibotila Data 1 februarie 2016 20:13:50
Problema Ciurul lui Eratosthenes Scor 30
Compilator c Status done
Runda Arhiva educationala Marime 0.4 kb
#include <stdio.h>

int N, counter, a[2000005];

int main(){
	FILE *in, *out;
	in = fopen("ciur.in", "r");
	out = fopen("ciur.out", "w");

	fscanf(in, "%d", &N);

	int i, j;

	for(i = 0; i <= N; i++){
		a[i] = 1;
	}

	for(i = 2; i <= N; i++){
		if(a[i] == 1){
			counter++;
			for(j = i + i; j <= N; j = j + i){
				a[j] = 0;
			}
		}
	}

	fprintf(out, "%d\n", counter);


	fclose(in);
	fclose(out);
	return 0;
}