Трохи пливе від LSB до MSB, рухаючись в одному положенні кожного разу, поки він не пливе на верхню частину контейнера:
0000
0001
0010
0100
1000
Як тільки один шматочок пливе на вершину, інший шматочок починає свою подорож і зупиняється, коли зустрічається з іншим бітом:
1001
1010
1100
Це відбувається, поки контейнер не заповниться бітами:
1101
1110
1111
Виклик
Враховуючи ціле число, виведіть " Біту плаваючу послідовність " для контейнера цієї кількості бітів.
- Кожен член послідовності може бути відокремлений будь-яким розділювачем на ваш вибір.
- Редагувати : Послідовність повинна бути показана у вигляді десяткових цілих чисел, починаючи з першого терма:
0
. - Розмір контейнера може бути більшим за нуль і до кількості бітів найбільшого цілого числа, що підтримується мовою, яку ви обрали. Ви можете припустити, що вхід завжди відповідає цій вимозі.
Приклади
Потрібна лише числова послідовність, двійкове представлення показано як приклад:
Для 1 :
0 1
0 -> 0 1 -> 1
Для 3 :
0 1 2 4 5 6 7
000 -> 0 001 -> 1 010 -> 2 100 -> 4 101 -> 5 110 -> 6 111 -> 7
Для 4 :
0 1 2 4 8 9 10 12 13 14 15
0000 -> 0 0001 -> 1 0010 -> 2 0100 -> 4 1000 -> 8 1001 -> 9 1010 -> 10 1100 -> 12 1101 -> 13 1110 -> 14 1111 -> 15
Для 8 :
0 1 2 4 8 16 32 64 128 129 130 132 136 144 160 192 193 194 196 200 208 224 225 226 228 232 240 241 242 244 248 249 250 252 253 254 255
00000000 -> 0 00000001 -> 1 00000010 -> 2 00000100 -> 4 00001000 -> 8 … … … 11111000 -> 248 11111001 -> 249 11111010 -> 250 11111100 -> 252 11111101 -> 253 11111110 -> 254 11111111 -> 255
[0.0, 1.0]
0 -> [0, 1]