#include using namespace std; #if 1 && defined(LOCAL) #include #else #define debug(...) #define line #endif using ll = long long; using ld = long double; #define all(x) (x).begin(), (x).end() #define rall(x) (x).rbegin(), (x).rend() template inline bool chmax(T &a, T b) { return ((a < b) ? (a = b, true) : (false)); } template inline bool chmin(T &a, T b) { return ((a > b) ? (a = b, true) : (false)); } vector > prime_factorize(long long n) { // nは2以上のものを渡す vector > res; for (long long p = 2; p * p <= n; ++p) { if (n % p != 0) continue; int num = 0; while (n % p == 0) { ++num; n /= p; } res.push_back(make_pair(p, num)); } if (n != 1) res.push_back(make_pair(n, 1)); return res; } int main() { int N; cin>>N; auto A=prime_factorize(N); int ans=0; for(int i=0;i