Как посчитать все палиндромы в заданном базовом диапазоне - PullRequest
0 голосов
/ 05 ноября 2019

В настоящее время у меня есть работающая, но медленная программа, которая делает это.

Входные данные: B = желаемая база (от 2 до 36) и Мин , Макс. (представляет диапазон в десятичной базе).

Мое решение состоит в том, чтобы взять каждое число из диапазона, преобразовать его в выбранную пользователем базу и использовать для него функцию Strrev (). Тогда, если число остается тем же после реверса, это палиндром, и я могу сделать всего ++;

Дело в том, что это работает для меньших чисел и диапазонов. Но ввод чего-то вроде

B = 2
Min = 85897767382
Max = 165696510410

занимает слишком много времени. Есть ли способ сделать это быстрее?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...