Відмова від відповідальності
Це питання не є дублікатом цього питання . Я не рахую конкретних цифр, оскільки у нас вже є ті, які встановлені в початкових параметрах. Це питання зосереджується на десяткових числах, які можна побудувати з двійкових рядків на основі наданих цифр.
Виклик
Дано два цілих числа X
і Y
, що представляють кількість нулів ( 0
) та одиниць ( 1
) відповідно, обчислити всі можливі десяткові еквіваленти, які можна визначити зі створення двійкових рядків, використовуючи лише нулі та надані, та відобразити їх як вихід.
Приклад 1:
Вхід: 0 1
Вихід: 1
Пояснення: 1
для обліку лише один , який можна конвертувати лише одним способом.
Приклад 2:
Вхід: 1 1
Вихід: 1,2
Пояснення: 01
перетворює в 1, 10
перетворює на 2.
Приклад 3:
Вхід: 3 2
Вихід: 3,5,6,9,10,12,17,18,20,24
Пояснення: Три 0
і два 1
с складають 00011
(3), 00101
(5), 00110
(6), 01001
(9), 01010
(10), 01100
(12), 10001
(17), 10010
(18), 10100
(20), 11000
(24)
Обмеження та правила
- Я буду розраховувати, що ваш код працюватиме там, де
0 < X + Y <= 16
максимальне число у виході могло виникнути лише з 161
с, тобто параметрів0
і16
. - В результаті вищезазначеного обмеження діапазон чисел, яких ми очікуємо у висновку, є від
0
та до65535
. - Приму функції або код, до тих пір , як це передбачено в результаті виходу, будь то розділений комами список, масив, список виводиться в STDOUT і т.д. Єдиним критерієм я повинен підкреслити про вихідний тому , що він повинен бути відсортований.
- Це кодовий гольф, мінімальний байт отримає максимальну славу.
- Ми не будемо миритися з дурними лазівками
0 0
?
0 <= X + Y <= 16
, так що так, тому 0 0
що вважався б дійсним вкладом, який відповідає цьому правилу.
0 0
? Число 0 може бути представлене нулем, одним або декількома нулями.