Олимпиадный тренинг

Задача . Следующее число


Дано натуральное число N. Необходимо определить следующее за ним число, в двоичном разложении которого столько же единиц, сколько в двоичном разложении числа N.
 
Входные данные
Входные данные содержит одно натуральное число N (\(N <= 2^{30}\)).
 
Выходные данные
Выведите ответ на задачу.
 

 

Примеры
№ Входные данные Выходные данные
1 1 2
2 2 4
3 3 5

Статистика успешных решений по компиляторам
 Кол-во
Free Pascal1
PascalABC1
Python70
С++37