Анализ алгоритма в блок-схеме. Найдите вход N, чтобы вывести R = 41441.

введите здесь описание изображения

Вопрос в том, каково наименьшее возможное значение N, чтобы R = 41441? Я решил проблему, и результат 1234, но мне любопытно, есть ли более простой и быстрый способ решить такие проблемы. Что я сделал, так это смоделировал алгоритм, работающий в моей голове от конца к началу, пока я не получу первое число, которое также является ответом. TBD последнее число, которое запускается в потоке, равно 1, потому что 1 div 5 равно 0, а 1 mod 5 равно 1, что является окончательным числом R, тогда число перед тем, которое было запущено, было 9, потому что 9 mod 5 равно 4, что равно предпоследнее число R и 9 div 5 равно 1, что является следующим числом, которое выполняется в потоке. Я продолжал делать это, пока не дошел до последнего числа, которое равно 1234 и дает мне все числа, которые мне нужны для R: 41441.

Существуют ли какие-либо умные методы для решения этих проблем более эффективным способом?


person tariktrokic    schedule 25.11.2019    source источник


Ответы (1)


Задача нахождения N эквивалентна задаче нахождения преобразования в 10 числа по основанию 5 "14414", которое является перевернутой строкой R. Это просто следует из того, что представляет собой представление по основанию b, и того факта, что если у вас есть число N по основанию b, N mod b просто дает вам последнюю цифру, а N div b дает вам число с отрезанной последней цифрой. введите здесь описание изображения

person Juan Carlos Ramirez    schedule 25.11.2019