Решение задачи №542 «Бит-реверс» с ACMP
Условие задачи
Целое положительное число m записывается в двоичной системе счисления, разряды (в этой записи) переставляются в обратном порядке и число переводится в десятичную систему счисления. Получившееся число принимается за значение функции B(m).
Требуется написать программу, которая для заданного m вычислит B(m).
Входные данные
Входной файл INPUT.TXT содержит натуральное число m (m ≤ 109).
Выходные данные
В выходной файл OUTPUT.TXT выведите значение B(m).
Решение на C++
Решение на C++
#include<cstdio>
main()
{
int a,b=0;
scanf("%d",&a);
while (a)
{
b=b*2+a%2;
a/=2;
}
printf("%d",b);
}
Условия задач взяты с сайта acmp.ru