Час

09:57:56
25 May 2012
Версія для друку

Задача 3n + 1

   Розглянемо наступний алгоритм генерації послідовності чисел. Почнемо з цілого числа N. Якщо N парне, то розділимо на 2. Якщо N непарне, то помножимо на 3 і додамо 1. Будемо повторювати процес з новим отриманим N, доки N не стане рівним 1. Наприклад, для N = 22 буде згенеровано наступну послідовність чисел:

22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1

   Припускають (але це ще не доведено), що цей алгоритм призводить до N = 1 для довільного цілого N. У всякому випадку, це припущення вірне для всіх цілих чисел до 1000000.

   Для заданого N довжиною циклу N будемо називати число згенерованих чисел до і включаючи 1. У прикладі, наведеному вище, довжна циклу 22 рівна 16. Для двох заданних чисел i та j ви повинні визначити максимальну довжину циклу для всіх чисел між i та j, включаючи обидві кінцеві точки.


Технічні умови

   Вхідні дані

   Вхідні дані будуть складатись з серії пар цілых чисел i та j, одна пара чисел у рядку. Всі цілі числа будуть меньші 1000000 і більші 0.

   Вихідні дані

   Для кожної пари чисел i та j виведіть числа i, j у тому порядку, у якому вони були введені, і після цього виведіть максимальну довжину циклу для всіх цілих чисел між i та j, включаючи самі i та j. Ці три числа повинні бути відокремлені одним пропуском, всі три числа у одному рядку, і для кожного рядка вхідних даних повинен бути один рядок вихідних даних.


Інформація про задачу

Ліміт часу: 1 секунда
Ліміт пам`яті: 64 MB
Бали за пройдений тест: 10
Складність: 42% 45/77

Приклад

Приклад вхідних даних

1 10
100 200
201 210
900 1000

Приклад вихідних даних

1 10 20
100 200 125
201 210 89
900 1000 174


← Трикутник Список задач З гармати на Місяць →