Блог пользователя _LNHTD_

Автор _LNHTD_, история, 5 лет назад, По-английски

Given $$$L,R (1 \leq L \leq R \leq 10^{18})$$$.

Count how many number $$$n=\overline{d_1d_2...d_k}$$$ that have $$$Q = n * d_1 * d_2 * \dots * d_k$$$ and $$$L \leq Q \leq R.$$$

I have done some calculation and found out that there are about $$$40000$$$ to $$$60000$$$ different possible product of digits: $$$d_1 * d_2 * \dots * d_k$$$. But I don't know any possible algorithm at all. Please help me! Thanks <3.

  • Проголосовать: нравится
  • +46
  • Проголосовать: не нравится

»
5 лет назад, скрыть # |
 
Проголосовать: нравится +15 Проголосовать: не нравится

This blog post might be helpful: https://codeforces.me/blog/entry/84354

TL;DR: for your problem, just store the prime factorization of the digit product in the DP state. That's it!