Про девятку. Я страстный поборник прав компьютеров (беру пример с ТС, немного изменив сабж поборничества), и я против многочасовых мучений аппарата, душимого разными там питонами. Рассуждение — вот мой код.
Данная задача безразлична к перестановкам цифр. Поэтому перебирать числа подряд неблагоразумно. Решим в терминах массива цифр. Заметим, что добавление единички увеличивает итоговую сумму на два, а произведение оставляет без изменений. Заметим также, что сумма всегда четна.
Итак, есть желание получить девятку.
Одна девятка даёт сумму девяносто, а произведение девять. Поувеличиваем двойками произведение так, чтобы оно превысило сумму. Нужно четыре двоечки. Произведение больше на сорок. Ну так добавим двадцать единичек.
Хочите две девятки? Добавим к ним две двойки и шестьдесят шесть единичек.
Не, про минимальность я молчу.
Ну да, тут достаточно массива из 10-и цифр и ещё одного дополнительного и тогда совсем быстро дело пойдет.
До миллиона цифр за секунды.