Cod sursa(job #1540209)
| Utilizator | Data | 2 decembrie 2015 13:39:27 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include <stdio.h>
using namespace std;
const int MAX = 2000000;
bool ciur[MAX + 1];
int main()
{
FILE *fin, *fout;
fin = fopen("ciur.in", "r");
fout = fopen("ciur.out", "w");
int n;
fscanf(fin, "%d", &n);
ciur[1] = 1;
int cnt = 0;
for(long long i = 2; i <= n; i++)
{
if(ciur[i] == 0)
{
cnt++;
for(long long j = i * i; j <= n; j+=i)
ciur[j] = 1;
}
}
fprintf(fout, "%d", cnt);
return 0;
}
