Ещё одна акция

В этой версии задачи $$$n \leqslant 10^6$$$. Давайте переберем, сколько мы купим килограмм в первый день. Пусть это число равно $$$k$$$. Тогда общая цена такой покупки будет равна $$$k \cdot a + max(n - (k + \lfloor \frac{k}{m} \rfloor), 0) \cdot b$$$. После чего возьмем минимум по этим знакичениям для всех $$$k$$$.

Асимптотика решения: $$$\mathcal{O}(n)$$$.