#include #include #include #include #include #include #include #include using namespace std; #define FOR(i,a,b) for (ll i = (a); i < (b); i++) #define REP(i,n) FOR(i,0,n) long gcd(long a, long b){ if (a%b==0){ return b; } else{ return gcd(b,a%b); } } long lcm(long a, long b){ return (a*b) / gcd(a,b); } template inline bool chmax(A &a, B b) { if (a < b) { a = b; return 1; } return 0; } template inline bool chmin(A &a, B b) { if (a > b) { a = b; return 1; } return 0; } typedef long long ll; const ll INF = 1ll<<29; const ll MOD = 1000000007; const double EPS = 1e-10; ll y[100000009]; int main(){ ll n; cin >> n; ll sum = 0; FOR(i,1,n){ if (n%i == 0){ int f = 0; REP(j,sum){ if (n/i == y[j]){ f++; break; } } if (f == 0){ y[sum] = i; sum++; } } } if (n/y[sum-1] == y[sum]) cout << sum*2-1 << endl; else cout << sum*2 << endl; return 0; }