Cod sursa(job #2385324)

Utilizator petrisorvmyVamanu Petru Gabriel petrisorvmy Data 21 martie 2019 19:57:59
Problema Suma divizorilor Scor 0
Compilator cpp-64 Status done
Runda excelenta-tema2 Marime 0.62 kb
#include <fstream>
#define NMAX 1000030
using namespace std;

ifstream f("divprim.in");
ofstream g("divprim.out");
int nd[NMAX];
int rez[NMAX][8];
int n,d=1000005, t,k;
void ciur()
{
    for(int i=2; i  <= d; ++i)
    {
        if(!nd[i])
            for(int j = i; j <=d; j+=i)
                nd[j]++;
        for(int j=1; j<=7; ++j)
            rez[i][j]=rez[i-1][j];

        if(nd[i]<=7)   rez[i][nd[i]]=i;

    }
}
int main()
{
    ciur();
    f>>n;
    for(int i = 1; i <= n; ++i )
    {
        f>> t >> k;
        g << rez[t][k] << '\n';
    }

    f.close();
    g.close();
    return 0;
}