Cod sursa(job #2636565)

Utilizator gasparrobert95Gaspar Robert Andrei gasparrobert95 Data 18 iulie 2020 18:11:17
Problema Divizori Primi Scor 25
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <iostream>
#include <fstream>
#define LMAX 1000005
using namespace std;
ifstream fin ("divprim.in");
ofstream fout ("divprim.out");
int prim[1000005];
int t, st, dr, k, loc;

void ciur() {
    for (long long i = 2; i * i <= LMAX; i += 2) {
        if (prim[i] == 0)
            for (long long j = i * 2; j <= LMAX; j += i)
                ++prim[j];
        if (i == 2)
            --i;
    }
    return;
}

int main() {
    ciur();
    fin >> t;
    while (t--) {
        fin >> dr >> k;
        while (dr > 0) {
            if (prim[dr] == k)
                break;
            --dr;
        }
        fout << dr << "\n";
    }
    return 0;
}