Feedback | If you notice incorrect translations in Contester, please let author know.
|
|
Time limit 2000/4000/4000/4000 ms. Memory limit 65000/65000/65000/65000 Kb.
Задание 10_02_12 - битовые операции (12 задание)
Гарри Поттер заказал себе волшебную палочку на АлиЭкспрессе. В инструкции к палочке написано, что она умеет изменять количество предметов (из A предметов делать B), но работает только в двоичной системе и побитово. Например, если Гарри Поттер хочет из 5 кактусов получить 15 кактусов, вначале он должен перевести оба числа в двоичную систему счисления (5 -> 101, 15 -> 1111), затем сделать 2 взмаха волшебной палочкой: 101 -> 111 -> 1111.
Напишите программу, которая получает на вход два числа A и B и определяет, какое количество взмахов волшебной палочкой потребуется сделать Гарри Поттеру, чтобы превратить А предметов в В.
Совет: все переменные делайте типом unsigned int (иначе в логически правильной программе могут быть ошибки из-за конвертации).
При решении задачи нельзя использовать операции % и /. Допустимо использовать только операции &, |, ^, ~, >>, << и циклы.
Входные данные:
Два целых неотрицательных числа: числа А и В.
Выходные данные:
Количество взмахов волшебной палочкой.
Примеры:
Входные данные: 5 15 Выходные данные: 2
Для отправки решений необходимо выполнить вход.
|