Cod sursa(job #3310969)
| Utilizator | Data | 18 septembrie 2025 12:59:31 | |
|---|---|---|---|
| Problema | Ciurul lui Eratosthenes | Scor | 100 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.65 kb |
#include <fstream>
void szita(int x, bool *t)
{
for (int i = 2; i * i <= x; i++)
{
if (!t[i])
{
for (int j = i * i; j <= x; j += i)
{
t[j] = true;
}
}
}
}
int main()
{
std::ifstream in("ciur.in");
int x;
in >> x;
in.close();
bool *t = new bool[x + 1]();
t[0] = t[1] = true;
szita(x, t);
int db = 0;
for (int i = 2; i <= x; i++)
{
if (!t[i])
{
db++;
}
}
std::ofstream out("ciur.out");
out << db;
out.close();
delete[] t;
return 0;
}