ACMP 673

Материал из Олимпиадное программирование в УлГТУ
Перейти к навигации Перейти к поиску

Ссылка на задачу

Комментарии

Вид подзадачи: d[k][s][p] — количество k-значных чисел с суммой цифр s и произведением цифр p.

Рекуррентная формула: d[k][s][p] = ∑d[k - 1][s - i][p / i], где i ∈ 1..9 и p делится на i. Целесообразно использовать просмотр вперёд: d[k][s][p] добавляется к d[k + 1][s + i][p * i], где i ∈ 1..9.

База рекурсии: d[1][i][i] = 1, где i ∈ 0..9.

Вид ответа: ∑d[n][i][i], где i ∈ 0..(9 × n). Сложность O(N3).

Вычисление минимального числа производится аналогичной динамикой.