найти минимально возможное значение заданного числа, если у нас есть только две операции - PullRequest
0 голосов
/ 10 октября 2018

У нас есть число, скажем, m, и у нас есть две заданные операции, и наша задача состоит в том, чтобы найти минимально возможное значение m с минимальным количеством шагов для достижения

Две операции

  1. Мы можем добавить цифру числа (будет считаться как 1 шаг).

  2. Мы можем добавить фиксированное число k (которое дано)

Мы можем повторять вышеуказанные операции любое количество раз.

Например: m = 11 и k = 13

вывод: 1 4 (1является минимальным значением, а 4 является числом шагов)

11 + 13 = 24 (1 шаг) + 13 = 37 (1 + 1 = 2 шага) = 3 + 7 = 10 (3 шага) =1 + 0 = 1 (4 шага)

что я пробовал?

Итак, так как такие вопросы обрабатываются BFS таким образом, что мы посещаем каждый узел, пока не получимминимум (я думал, что это основано на BFS, поправьте меня, если я не прав).Я думал, что мы делаем BFS, пока мы не получим повторяющуюся цифровую сумму или одно и то же число, но превышающее ее границы, потому что ограничения m и k до 10 ^ 10.

Есть ли что-то, что я могу сделать, чтобы оптимизировать мою BFS илиЧто-то еще, что я должен сделать, я имею в виду, должен ли я использовать какой-то другой алгоритм?

Просто нужно некоторое руководство относительно того, что еще я могу сделать!

...