Cod sursa(job #2432359)

Utilizator TudorP2006Popescu Tudor TudorP2006 Data 23 iunie 2019 12:16:12
Problema Ciurul lui Eratosthenes Scor 20
Compilator c-64 Status done
Runda Arhiva educationala Marime 0.53 kb
#include <stdio.h>

int v[2000001];
char ciur[2000001];
int main()
{
    FILE *fin, *fout;
    fin = fopen( "ciur.in", "r" );
    fout = fopen( "ciur.out", "w" );

    int i, j, n;
    ciur[0] = ciur[1] = 1;
    for ( i = 2; i * i < 2000001; i++ ){
      v[i] = v[i - 1];
      if ( ciur[i] == 0 ){
        v[i]++;
        for ( j = i * i; j < 2000001; j+= i )
          ciur[j] = 1;
      }
    }
    fscanf( fin, "%d", &n );
    fprintf( fout, "%d", v[n] );
    fclose( fin );
    fclose( fout );
    return 0;
}