Cod sursa(job #663952)

Utilizator a08iAndrei Ionescu a08i Data 19 ianuarie 2012 12:04:56
Problema Ciurul lui Eratosthenes Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.35 kb
#include <cstdio>

bool m[2000002] = {0};

int main()
{
  freopen("ciur.in", "r", stdin);
  freopen("ciur.out", "w", stdout);

  int T, i, j, count;
  count = 0;

  scanf("%d", &T);

  for(i=2; i <=T; ++i)
  {
    if(m[i] == 0)
    {
      count++;
      for(j=2*i; j<=T; j+=i)
      {
        m[j] = 1;
      }
    }
  }

  printf("%d\n", count);
  return 0;
}