Задайте целое число X, где X может быть отрицательным или положительным. найти кратчайшую последовательность бит, которая представляет X в системе base -2.Создать кратчайшую последовательность бит-бит -2
В базовой системе -2, учитывая массив А N битов, представляемое целое число: сумма А [я] * (- 2 мощности я) для г = 0..N-1
пример:
[1,0,1] = 5
[1,0,0,1] = -7
[1,0,0,1,0,1] = -39
так, учитывая Х = 18, алгоритм должен возвращать [0, 1, 1, 0, 1]
любую идею о том, как реализовать такой алгоритм .. таким образом, что дано integer X возвращает кратчайшую последовательность бит, которая представляет это целое число?
Единственное, что я придумал, это поиск грубой силы .. начиная с бит 0 и вычисляя все возможные суммы, пока одна из сумм не будет равна X .., которая не выглядит красивой!
Разве вы не должны самостоятельно решать свою домашнюю работу/соревнование? –
@ СалвадорДали, который сказал вам, что это домашнее задание? – Johny
Кажется, вы спрашиваете, что такое двоичное представление целого? В этом случае «кратчайшая последовательность бит» не имеет смысла, для каждого номера существует одна и только одна битовая последовательность. – Svea