Cod sursa(job #2154770)

Utilizator araulo22Raul Acatrinei araulo22 Data 7 martie 2018 11:57:27
Problema Numere 2 Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <fstream>
#include <math.h>
#include <queue>

#define ll unsigned long long

using namespace std;

//map<pair<int,int>,long long> d;
queue<ll> v;

int main()
{ifstream f("numere2.in");
ofstream g("numere2.out");
ll x;
f>>x;
for(ll i=2;i<int(sqrt(x))+1;i++)
{
    if(x%i==0) {if(x/i!=i) {v.push(i);v.push(x/i);} else {v.push(i);}}
}
bool oki=1;
while(!v.empty())
{
    ll a;
    a=v.front();
    v.pop();
    ll b=x,exp=1;
    bool ok=1;
    while(b>a)
    {
        if(b%a==0) {b/=a; exp++;}
        else {ok=0; break;}
    }
    if(ok==1) {g<<a<<endl<<exp; oki=0; break;}
}
if(oki) g<<x<<endl<<"1";
    return 0;
}