Cod sursa(job #3175748)

Utilizator n6v26rDedu Razvan Matei n6v26r Data 26 noiembrie 2023 13:19:17
Problema Ciurul lui Eratosthenes Scor 100
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.5 kb
#include <stdio.h>
#include <stdbool.h>

#define MAXN 2000000

bool ciur[MAXN+1];

int main(){
  ciur[0]=ciur[1]=0;
  for(int i=2; i*i<=MAXN; i++){
    if(!ciur[i]){
      for(int d=i*i; d<=MAXN; d+=i)
        ciur[d]=true;
    }
  }
  int n;
  FILE *fin, *fout;
  fin = fopen("ciur.in", "r");
  fscanf(fin, "%d", &n);
  fclose(fin);

  int total = 0;
  for(int i=2; i<=n; i++){
    if(!ciur[i])
      total++;
  }

  fout = fopen("ciur.out", "w");
  fprintf(fout, "%d\n", total);
  fclose(fout);
  return 0;
}