Cod sursa(job #1792055)

Utilizator dcutitoiuCutitoiu Adrian-Nicolae dcutitoiu Data 29 octombrie 2016 23:15:26
Problema Divizori Primi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <iostream>
#include <algorithm>
#include <fstream>
#include <vector>
#include <string>
#include <iterator>
#include <numeric>
#include <string>
#include <set>
#include <map>
#include <queue>

using namespace std;

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

int divisors[1000001];
int numbers[1000001][8];

int main()
{
    for(int i = 2; i <= 1000000; ++i)
    {
        if(divisors[i] == 0)
            for(int j = i; j <= 1000000; j += i)
                divisors[j]++;

        for(int j = 0; j <= 7; ++j)
            numbers[i][j] = numbers[i - 1][j];

        numbers[i][divisors[i]] = i;
    }

    int testNumber;
    in >> testNumber;

    while(testNumber--)
    {
        int N, K;
        in >> N >> K;
        out << numbers[N][K] << '\n';
    }

    return 0;
}