#include #include #define rep(i,a,b) for(int i=(a);i<(b);i++) #define pb push_back #define ll long long using namespace std; #define LMAX 316229 ll N; int *P; void prime(void) { rep(i,2,LMAX) { if(P[i] == 0) P[i] = i; for(int j = i+i; j < LMAX; j += i) { P[j] = -1; } } } int main(void) { cin >> N; ll max = N-1; P = new int[LMAX](); prime(); vector V; rep(i,2,LMAX) { if(P[i] == -1) continue; if(N % P[i] == 0) { V.pb(P[i]); N /= P[i]; i = 1; } } int min = 0; for(auto i:V) min += i-1; cout << min << " " << max << endl; delete[] P; return 0; }