Cod sursa(job #2135777)
| Utilizator | Data | 19 februarie 2018 10:55:08 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.55 kb |
#include <stdio.h>
#include <stdlib.h>
using namespace std;
char v[2000001];
int main()
{
FILE *fin, *fout;
int n,i,k,p;
fin=fopen("ciur.in","r");
fscanf(fin,"%d",&n);
fclose(fin);
p=0;
for(k=2;k*k<=n;k++){
if(v[k]==0){
p++;
for(i=k;i*k<=n;i++){
v[i*k]=1;
}
}
}
for(k;k<=n;k++){
if(v[k]==0)
p++;
}
fout=fopen("ciur.out","w");
fprintf(fout,"%d",p);
fclose(fout);
return 0;
}
