Cod sursa(job #1356833)
| Utilizator | Data | 23 februarie 2015 16:54:49 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.57 kb |
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
int main()
{
ifstream i("ciur.in");
ofstream o("ciur.out");
int x, p = 0;
i >> x;
bool c[x];
memset (c,true,x);
for(int a = 0; a < x; a++)
{
if(a == 0)
{
continue;
}
if(c[a])
{
p++;
int t = a+1;
for(int b = t*t; b <= x; b = b + t)
{
c[b-1] = false;
}
}
}
o << p;
return 0;
}
