Когда основание неизвестно, оно входит сразу в два места: и в значение цифр, и в знаменатель дроби. Поэтому решать такую задачу следует от выражения — выписывать дробь через b и преобразовывать её, а не подбирать запись наугад.
Основание из целочисленности
Найдём минимальное b, при котором число 10·0,1(2)b — натуральное. Сразу отметим: цифра 2 допустима только при b ≥ 3.
Запишем выражение через b:
0,1(2)b = 1/b + 2/[b(b−1)] = (b+1)/[b(b−1)].
Теперь переберём допустимые основания и проверим, когда произведение на 10 даёт натуральное число:
| b |
10(b+1)/[b(b−1)] |
Натуральное? |
| 3 |
20/3 |
Нет |
| 4 |
25/6 |
Нет |
| 5 |
3 |
Да |
Все меньшие допустимые основания уже проверены, значит минимум — 5. Заметьте: короткая проверка оправдана тем, что перебор ограничен границей b ≥ 3, и проверять все возможные дробные записи не требуется.
Если подходящее основание так и не найдено, нужно доказать, что поиск можно остановить. Например, когда выражение уже стало положительным числом меньше 1 и при росте b продолжает убывать, натуральным оно больше не станет ни при каком b.
Проверь себя