Cod sursa(job #1644958)

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

using namespace std;

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

long long n, x, k;
int nd[1000005];
long long din[8][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 <= 7; 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 (;n;n--)
    {
        f >> x >> k;
        g << din[k][x] << "\n";
    }
    return 0;
}