Ограничения: время – 200ms/500ms, память – 256MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод
Послать решение Blockly Посылки Темы Где Обсудить (0)
Если взять натуральное число и найти сумму квадратов его цифр, затем сумму
квадратов цифр результата и так далее, то через несколько шагов для некоторых из чисел получится число 1.
Такие числа будем называть первоклассными. Например, первоклассным будет число 19,
так как `1^2+9^2=82`, `8^2+2^2=68`, `6^2+8^2=100`, `1^2+0^2+0^2=1`. А числа 2 или 5 первоклассными
не являются.
Напишите программу, которая находит количество первоклассных чисел среди чисел в диапазоне от `A` до `B` включительно.
Первая строка ввода содержит два целых чисел `A`, `B`.
Вывести одно целое число – количество первоклассных чисел среди чисел в диапазоне от `A` до `B`.
Описание подзадач и системы оценивания
Подзадача 1 (25 баллов)
`1\ ≤\ A\ ≤\ B\ ≤\ 10^6`, `B\ -\ A\ ≤\ 1000`
В этой подзадаче 5 тестов, каждый тест оценивается в 5 баллов. Баллы за каждый тест начисляются независимо.
Подзадача 2 (25 баллов)
Необходимые подзадачи: 1.
`1\ ≤\ A\ ≤\ B\ ≤\ 10^9`, `B-\ A\ ≤\ 10^6`
В этой подзадаче 5 тестов, каждый тест оценивается в 5 баллов. Баллы за каждый тест начисляются независимо.
Подзадача 3 (50 баллов)
Необходимые подзадачи: 1,2.
`1\ ≤\ A\ ≤\ B\ ≤\ 10^{18}`
В этой подзадаче 5 тестов, каждый тест оценивается в 10 баллов. Баллы за каждый тест начисляются независимо.
По запросу сообщается результат окончательной проверки на каждом тесте для всех подзадач.