Cod sursa(job #2506766)

Utilizator WilIiamperWilliam Damian Balint WilIiamper Data 8 decembrie 2019 19:07:12
Problema Divizori Primi Scor 55
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#include <bitset>
#define MAX 1000005

using namespace std;
ifstream fin ("divprim.in");
ofstream fout ("divprim.out");
int n, t, k, v[MAX];
bitset <MAX> ciur;

int main()
{
    int i, j;
    for (i = 2; i < MAX; i++) {
        if (!ciur[i]) {
            for (j = i; j < MAX; j += i) {
                ciur[j] = 1;
                v[j]++;
            }
        }
    }

    fin >> t;
    while (t--) {
        fin >> n >> k;
        bool gasit = false;
        i = n;
        while ( !gasit && i >= 0) {
            if (v[i] == k)
                gasit = true;
            i--;
        }
        fout << i+1 << "\n";
    }
    return 0;
}