Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Чат
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Алгоритмы
Курсы ККДП
Дистрибутивы
Ссылки

HotLog


 

Пасьянс старухи Шапокляк

(Время: 1 сек. Память: 16 Мб Сложность: 25%)

На столе лежат колоды игральных карт. В самой тоненькой колоде – p карт, во второй – p+1, в третьей – p+2, …, в последней – k карт. Старуха Шапокляк раскладывает пасьянс. Беря в руки любую из колод, она, если число карт в ней четное, на место возвращает колоду, наполовину уменьшив число карт в ней (лишние убирает в ящик), а если количество карт в колоде нечетное, то утраивает их количество и добавляет еще одну карту, а уже тогда кладет колоду на стол (карт у нее в ящике для этой операции достаточно). Если в какой-то колоде остается две карты, она больше ее не трогает. Пасьянс сходится, если во всех колодах остается по две карты.

Требуется написать программу, которая определит сходится ли пасьянс, и если сходится – сколько раз должна старуха Шапокляк брать со стола карты.

Входные данные

Входной файл INPUT.TXT содержит 2 числа, записанные через пробел (2 ≤ p < k < 1000).

Выходные данные

Выходной файл OUTPUT.TXT должен содержать 0, если пасьянс не сходится, и, если сходится, количество «ходов» старухи Шапокляк.

Примеры

INPUT.TXTOUTPUT.TXT
12 36
25 828

Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!

[Обсуждение] [Все попытки] [Лучшие попытки]

Красноярский краевой Дворец пионеров, (c)2006 - 2017, ICQ: 151483



Вчера играл в онлайн пасьянсы на КартаБита, поэтому сегодня сижу паука разглядываю.