Cod sursa(job #1644944)

Utilizator FlorinHajaFlorin Gabriel Haja FlorinHaja Data 10 martie 2016 10:22:58
Problema Divizori Primi Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>

using namespace std;

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

int n, x, k;
int nd[1000005], l;
int din[9][1000005];

void ciur()
{
    int i, j;
    for (i = 2; i <= 1000000; i++)
        if (nd[i] == 0)
            for (j = 2*i; j <= 1000000; j += i)
                nd[j]++;
    for (i = 1; i <= 8; i++)
    {
        din[i][0] = 0;
        for (j = 1; j <= 1000000; j++)
            if (nd[j] == i)
                din[i][j] = j;
            else
                din[i][j] = din[i][j-1];
    }
}

int main()
{
    ciur();
    f >> n;
    for (int i = 1; i <= n; i++)
    {
        f >> x >> k;
        g << din[k][x] << "\n";
    }
    return 0;
}