#include #include #include #include #include #include #include #include #include #include #include #include #define mod 1000000007; using namespace std; typedef long long ll; typedef pair Pr; ll N; ll getDivisor(ll n) { vector v; for (ll i = 1; i*i <= n; i++) { if (n % i == 0) { v.push_back(i); if (i != n / i) { v.push_back(n / i); } } } return v.size(); } int main() { cin >> N; string s = to_string(N); bool flag1 = false,flag2 = false; for (int i = 0; i < s.size()-1; i++) { if (s[i] != s[i + 1]) { flag1 = true; break; } } if (!flag1) { for (int i = 1; i < 9; i++) { if (i*i == s[0]-'0') { flag2 = true; break; } } } if (flag1 || !flag2) cout << getDivisor(N) << endl; else cout << getDivisor(N) - 1 << endl; return 0; }