Cod sursa(job #3186163)

Utilizator stefanrotaruRotaru Stefan-Florin stefanrotaru Data 21 decembrie 2023 20:13:43
Problema Divizori Primi Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>

using namespace std;

ifstream f("nasa.in");
ofstream g("nasa.out");

int a, b, patrate[1 << 20], ind, cnt;

void ciur()
{
    int i = 2, maxi = (1e9);

    while (i * i <= maxi) {
        patrate[++ind] = i * i;
        i++;
    }
}

int main()
{
    f >> a >> b;

    ciur();

    if (a > b) {
        swap(a, b);
    }

    for (int i = a; i <= b; ++i) {
        bool ok = true;
        for (int j = 1; patrate[j] <= b; ++j) {
            if (i % patrate[j] == 0) {
                ok = false;
                break;
            }
        }

        if (ok) {
            cnt++;
        }
    }

    g << cnt;

    return 0;
}