#include #include #include #include #include #include #include #include using namespace std; #define int long long #define rep(i,n) for(int i = 0; i < (n); i++) #define endl "\n" const long long INF = (long long)1e18; const long long MOD = (long long)1e9 + 7; string yn(bool f){return f?"Yes":"No";} string YN(bool f){return f?"YES":"NO";} #define MAX 1100000000 signed main(){ cin.tie(0); ios::sync_with_stdio(false); cout<> t; vector vec; set se; // x[1] = true; se.insert(1); cin>>N>>K>>M; m = N; for(int i = 2; i*i <= m; i++){ while(m%i == 0){ if(t.size() == 0 || t.back().first != i) t.push_back(make_pair(i,1)); else t.back().second++; m /= i; } } if(m != 1) t.push_back(make_pair(m,1)); sort(t.begin(), t.end()); for(int i = 0; i < t.size(); i++){ t[i].second *= K; // cout<