Решение: Числа по маске 123*67
Назовём маской числа последовательность цифр, в которой также могут встречаться следующие символы: символ «?» означает ровно одну произвольную цифру; символ «*» означает любую последовательность цифр произвольной длины, в том числе «*» может задавать и пустую последовательность. Например, маске 123*4?5 соответствуют числа 123405 и 12300405.
Среди натуральных чисел, не превышающих $10^8$, найдите все числа, соответствующие маске 123*67, делящиеся на 133 без остатка.
Решение по шагам
5 шаговДлина числа не превышает 8 цифр. Поэтому вместо символа «*» может находиться от 0 до 3 цифр.
При отсутствии цифр или при одной-двух цифрах проверка остатков по модулю 133 не даёт допустимого значения вставки.
При трёх цифрах число имеет вид $12300067 + 100x$, где $0 \leq x \leq 999$. Условие делимости: $12300067 + 100x \equiv 0 \pmod{133}$.
Так как $12300067 \equiv 94 \pmod{133}$, получаем $100x \equiv 39 \pmod{133}$. Обратный к 100 элемент по модулю 133 равен 4, поэтому $x \equiv 23 \pmod{133}$.
Допустимые значения $x$: $23, 156, 289, 422, 555, 688, 821, 954$. Соответствующие числа образуют арифметическую последовательность с разностью 13300, а частные — с разностью 100.
12302367 — 92500; 12315667 — 92600; 12328967 — 92700; 12342267 — 92800; 12355567 — 92900; 12368867 — 93000; 12382167 — 93100; 12395467 — 93200
Этот ответ получен в разборе, но не сверен с официальным ключом из банка — проверьте выкладки, прежде чем заучивать результат.
Где здесь ошибаются
Не учитывать варианты с ведущими нулями внутри последовательности, заменяющей «*».
Проверять только числа с одинаковым количеством цифр вместо символа «*».
Перепутать числа и результаты их деления в двух столбцах.
Остановить перебор после первого найденного числа.