Помогите, пожалуйста, с задачкой из онлайн ассесмента Яндекса(мероприятие Yandex Weekly offer уже закончилось).
Даны числа n и m, нужно вернуть количество палиндромов в цифровых часах вида 23:23, если бы в сутках было не 24 часа и 60 минут, а n часов и m минут. Причем числа n и m огромные и заданы в виде строки длиной до 10^5.
Пример для n = 12, m = 1234 : 0000:0000, 0001:1000, 0001:1000, 0010:0100, 0010:0100, 0011:1100, 0011:1100.
Выводим 4(надо выводить по модулю 10^9+7)
Другой пример:
Ввод 24 60
Вывод 16
print(rand(0, 1000000006))
Я умею решать все задачи. Правда алгоритм рандомизированный.
It seems like some digit dp type of concept will help solveing it
n и m не важны как числа, т.к. вклад вносят отдельные цифры. Поэтому сравниваем i-ю цифру слева n с i-й справа m, с учётом того есть ли "продолжение" числа (1234 включает 0999)