// yukicoder: No.639 An Ordinary Sequence // 2019.7.18 bal4u #include #define HASHSIZ 1000003 unsigned memo[HASHSIZ+5] = {1}; unsigned dp(long long a) { int p = (int)(a % HASHSIZ); if (memo[p]) return memo[p]; return memo[p] = dp(a / 3) + dp(a / 5); } int main() { long long N; scanf("%lld", &N); printf("%u\n", dp(N)); return 0; }