Cod sursa(job #1883921)

Utilizator icansmileSmileSmile icansmile Data 18 februarie 2017 12:12:17
Problema GFact Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <iostream>
#include <fstream>

using namespace std;

long long power_appearances(long long number, long long searched_power){
    long long power_count = 0;
    while(number % searched_power == 0){
        power_count++;
        number = number/searched_power;
    }
    return power_count;
}

long long find(long long P, long long Q){
    long long fact = 1;

    for(long long i = 1; i <= INT64_MAX; i++ )
    {
        if( i % P == 0 )
        {
            fact = fact * i;
            if( power_appearances(fact,P) == Q)
                return i;
        }
    }
    return -1;
}

int main() {
    long long P,Q;

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

    in >> P >> Q;

    out << find(P,Q);

    return 0;
}