Cod sursa(job #1181565)
| Utilizator | Data | 3 mai 2014 03:59:21 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | c | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
#include <stdio.h>
char Ciur[2000005]; // CHAR, not INT for GOD's sake. char = 100 points. int = 30 points.
int main()
{
int N, i, j, numar = 0;
FILE *input = fopen("ciur.in", "r");
FILE *output = fopen("ciur.out", "w");
fscanf(input, "%d", &N);
for (i = 2; i <= N; i++) Ciur[i] = 1;
for (i = 2; i <= N; i++)
if (Ciur[i])
{
numar++;
for (j = i + i; j <= N; j += i)
Ciur[j] = 0;
}
fprintf(output, "%d", numar);
return 0;
}
