func_code_string: #include <bits/stdc++.h>   using namespace std;   const long long INF = 1e18;   void self_max(long long& a, const long long& b) { a = max(a, b); }   void self_min(long long& a, const long long& b) { a = min(a, b); }   inline void preprocessing() {}   inline void solve() {     long long n;     cin >> n;     if (n == 1) {       cout <<  1 0  <<   n ;       return;     }     vector<long long> factors;     long long value = 1;     long long len = ceil(sqrt(n)) + 1;     long long originalN = n;     for (long long i = 2; i < len; ++i) {       if (n == 1) break;       if (n % i == 0) {         long long cnt = 0;         while (n % i == 0) {           ++cnt;           n /= i;         }         factors.emplace_back(cnt);         value *= i;       }     }     long long maxCount = 0;     for (const long long& factor : factors)       if (factor > maxCount) maxCount = factor;     if (maxCount < 2) {       cout << originalN <<   0  <<   n ;       return;     }     long long operations = ceil(log2(maxCount));     long long u = exp2(operations);     for (const long long& factor : factors) {       if (factor != u) {         ++operations;         break;       }     }     if (n == 1)       cout << value <<     << operations <<   n ;     else       cout << value * n <<     << operations + 1 <<   n ;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     preprocessing();     solve();   }   