ИКБО-65-23

Вариант №1

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Целое.

Тесты:

>>> main('4073796976')
3749466

>>> main('6297167934')
6236906

>>> main('6503080302')
6627443

>>> main('4192318435')
3781436

Вариант №2

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('0x33123')
'0x13983'

>>> main('0x2d1d3')
'0x1d693'

>>> main('0x37cea')
'0xfbea'

>>> main('0x15341')
'0x34a81'

Вариант №3

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(24095777)
[('F1', '1'), ('F2', '4'), ('F4', '14'), ('F5', '91')]

>>> main(34398255)
[('F1', '7'), ('F2', '5'), ('F4', '3'), ('F5', '131')]

>>> main(64707962)
[('F1', '2'), ('F2', '47'), ('F4', '13'), ('F5', '246')]

>>> main(49725474)
[('F1', '2'), ('F2', '4'), ('F4', '11'), ('F5', '189')]

Вариант №4

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('0x2616877c')
('892', '33', '22', '0', '38')

>>> main('0x4e4a85b')
('91', '42', '36', '3', '4')

>>> main('0xed97de6')
('486', '31', '25', '3', '14')

>>> main('0x21117179')
('377', '28', '17', '0', '33')

Вариант №5

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main({'F1': '0x2c', 'F2': '0x5', 'F3': '0x1b', 'F4': '0x1'})
'46956'

>>> main({'F1': '0x34', 'F2': '0x4', 'F3': '0x7', 'F4': '0x3'})
'102196'

>>> main({'F1': '0x3e', 'F2': '0x3', 'F3': '0x39', 'F4': '0x3'})
'127742'

>>> main({'F1': '0x34', 'F2': '0x1', 'F3': '0x32', 'F4': '0x1'})
'58484'

Вариант №6

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main(3180376)
'14027808'

>>> main(734642)
'7111360'

>>> main(11947458)
'7384448'

>>> main(11819812)
'13184256'

Вариант №7

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('643663')
{'P2': '1', 'P3': '329', 'P4': '19'}

>>> main('1716467')
{'P2': '6', 'P3': '195', 'P4': '52'}

>>> main('1526425')
{'P2': '3', 'P3': '298', 'P4': '46'}

>>> main('353651')
{'P2': '6', 'P3': '405', 'P4': '10'}

Вариант №8

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('24651')
'0x80004b1'

>>> main('223466')
'0xa000ead'

>>> main('235527')
'0x600007e'

>>> main('64184')
'0xe800b83'

Вариант №9

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('947974')
('0x2', '0x1c1', '0x39')

>>> main('748415')
('0x3', '0xdf', '0x2d')

>>> main('1016086')
('0x2', '0x45', '0x3e')

>>> main('370494')
('0x2', '0x1cf', '0x16')

Вариант №10

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('1231389688')
('8', '63', '6', '178', '36')

>>> main('7524523597')
('13', '484', '4', '63', '224')

>>> main('13434874805')
('5', '699', '7', '99', '400')

>>> main('2341951924')
('4', '411', '5', '203', '69')

Вариант №11

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main('0x55f2397c3')
22976147459

>>> main('0x2fb39b3ef8')
204882280450

>>> main('0x2c1482cf38')
189195845634

>>> main('0x2b7fcac238')
186497859587

Вариант №12

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0x1c15f')
'484486144'

>>> main('0x3b78f')
'500941824'

>>> main('0x63e2')
'137490432'

>>> main('0x1b31c')
'282692608'

Вариант №13

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('26446021041')
[('D1', '1'), ('D3', '16'), ('D4', '78'), ('D5', '788')]

>>> main('11003669981')
[('D1', '1'), ('D3', '43'), ('D4', '478'), ('D5', '327')]

>>> main('26528906712')
[('D1', '0'), ('D3', '63'), ('D4', '318'), ('D5', '790')]

>>> main('31412973894')
[('D1', '2'), ('D3', '60'), ('D4', '91'), ('D5', '936')]

Вариант №14

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main((62, 23, 1))
'11260'

>>> main((30, 53, 0))
'6844'

>>> main((28, 12, 0))
'1592'

>>> main((10, 25, 2))
'19604'

Вариант №15

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main('0x1019e0')
53056

>>> main('0x320d89')
27848

>>> main('0x17af82')
97374

>>> main('0xf8f71')
31550

Вариант №16

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0xf8bf2e0ddf')
'411250392879'

>>> main('0xa5129b829b')
'589150083739'

>>> main('0x8e59e3b43f')
'191086328291'

>>> main('0x8429edb1a4')
'86663569901'

Вариант №17

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(2426275680)
[('Y1', '864'), ('Y2', '1'), ('Y3', '15'), ('Y4', '2'), ('Y5', '0'), ('Y6', '9')]

>>> main(4498754169)
[('Y1', '633'), ('Y2', '98'), ('Y3', '18'), ('Y4', '0'), ('Y5', '12'), ('Y6', '16')]

>>> main(6572680068)
[('Y1', '900'), ('Y2', '72'), ('Y3', '1'), ('Y4', '3'), ('Y5', '7'), ('Y6', '24')]

>>> main(3103890405)
[('Y1', '997'), ('Y2', '102'), ('Y3', '0'), ('Y4', '0'), ('Y5', '9'), ('Y6', '11')]

Вариант №18

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main(('0xc', '0x13d', '0x29', '0xe4'))
'61246600204'

>>> main(('0x3a1', '0x16b', '0xf5', '0x1dd'))
'128300986273'

>>> main(('0x1f5', '0x58', '0x18', '0xde'))
'59617927669'

>>> main(('0x75', '0x369', '0x40', '0x7a'))
'32817128565'

Вариант №19

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0x1398190d6')
'5259766884'

>>> main('0x2b19db764')
'11569908077'

>>> main('0x37ff2fab4')
'15031691454'

>>> main('0x2a1990bab')
'11301508674'

Вариант №20

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('1688938795')
'848474809'

>>> main('1742139579')
'1863040857'

>>> main('346227452')
'808436357'

>>> main('2060122008')
'796494654'

Вариант №21

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0x254')
'38144'

>>> main('0x149c')
'75521'

>>> main('0xcc2')
'209024'

>>> main('0x3f4')
'64768'

Вариант №22

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('0x11d4a5d8')
('0x1d8', '0x1', '0x1', '0x8')

>>> main('0x9505791')
('0x391', '0x5', '0x2', '0x4')

>>> main('0x49eeec3')
('0x2c3', '0x3', '0x3', '0x2')

>>> main('0xd23bb7c')
('0x37c', '0x6', '0x1', '0x6')

Вариант №23

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Тесты:

>>> main(1513284)
{'W1': 4, 'W2': 744, 'W3': 0, 'W4': 46}

>>> main(892794)
{'W1': 2, 'W2': 1007, 'W3': 0, 'W4': 27}

>>> main(848819)
{'W1': 3, 'W2': 630, 'W3': 3, 'W4': 25}

>>> main(1440809)
{'W1': 1, 'W2': 901, 'W3': 3, 'W4': 43}

Вариант №24

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('52223032')
('56', '184', '1', '199')

>>> main('40716951')
('23', '149', '2', '155')

>>> main('21916770')
('98', '216', '4', '83')

>>> main('29830957')
('45', '94', '6', '113')

Вариант №25

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('1064515749903')
{'W1': 15, 'W2': 144, 'W3': 42, 'W4': 1, 'W5': 27, 'W6': 247}

>>> main('800293496533')
{'W1': 85, 'W2': 77, 'W3': 619, 'W4': 2, 'W5': 10, 'W6': 186}

>>> main('471610823448')
{'W1': 24, 'W2': 38, 'W3': 100, 'W4': 3, 'W5': 25, 'W6': 109}

>>> main('87696236491')
{'W1': 75, 'W2': 191, 'W3': 564, 'W4': 1, 'W5': 13, 'W6': 20}

Вариант №26

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('0xb579954a83')
'0x32ba9000d4'

>>> main('0xa8e43453ac')
'0x86a8a0031d'

>>> main('0x99f80368fe')
'0x96d00787'

>>> main('0x9a0ecf5345')
'0xd99ea0015a'

Вариант №27

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('99397597')
'133090653'

>>> main('116016141')
'33993885'

>>> main('263366484')
'61554036'

>>> main('69710908')
'169501532'

Вариант №28

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main({'E1': '0x25', 'E2': '0x92', 'E3': '0x3b', 'E4': '0x3', 'E5': '0xe7', 'E6': '0x3'})
'29649462437'

>>> main({'E1': '0x6', 'E2': '0x70', 'E3': '0x6', 'E4': '0xe', 'E5': '0xd5', 'E6': '0x4'})
'37948070918'

>>> main({'E1': '0x1d', 'E2': '0x96', 'E3': '0x31', 'E4': '0x3', 'E5': '0x18e', 'E6': '0x2'})
'23861159325'

>>> main({'E1': '0x1f', 'E2': '0x70', 'E3': '0x29', 'E4': '0x0', 'E5': '0x19c', 'E6': '0x6'})
'58452499487'

Вариант №29

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main(('160', '13', '0', '58'))
'0x740da0'

>>> main(('25', '31', '14', '47'))
'0x5fdf19'

>>> main(('40', '10', '2', '100'))
'0xc84a28'

>>> main(('10', '8', '10', '81'))
'0xa3480a'

Вариант №30

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0x2231e')
'492614'

>>> main('0x7b1dc')
'1511267'

>>> main('0xc8f74')
'1906974'

>>> main('0x95007')
'119456'

Вариант №31

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main({'D1': 6, 'D2': 6, 'D3': 0, 'D4': 26})
'0x1a66'

>>> main({'D1': 4, 'D2': 1, 'D3': 1, 'D4': 4})
'0x494'

>>> main({'D1': 1, 'D2': 3, 'D3': 1, 'D4': 8})
'0x8b1'

>>> main({'D1': 8, 'D2': 7, 'D3': 1, 'D4': 16})
'0x10f8'

Вариант №32

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Целое.

Тесты:

>>> main([('P1', '20'), ('P2', '0'), ('P3', '37'), ('P4', '13'), ('P5', '15'), ('P6', '239')])
513514184724

>>> main([('P1', '38'), ('P2', '26'), ('P3', '18'), ('P4', '0'), ('P5', '109'), ('P6', '501')])
1077718173350

>>> main([('P1', '47'), ('P2', '114'), ('P3', '74'), ('P4', '4'), ('P5', '103'), ('P6', '268')])
577258478767

>>> main([('P1', '15'), ('P2', '53'), ('P3', '70'), ('P4', '7'), ('P5', '69'), ('P6', '76')])
164374302031

Вариант №33

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main([('L1', '0x6'), ('L3', '0xe'), ('L4', '0x1')])
966

>>> main([('L1', '0x4'), ('L3', '0xe'), ('L4', '0x2')])
1476

>>> main([('L1', '0x5'), ('L3', '0xf'), ('L4', '0x0')])
485

>>> main([('L1', '0x6'), ('L3', '0x0'), ('L4', '0x2')])
1030

Вариант №34

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('2519455')
'0x999f'

>>> main('3967663')
'0xf2af'

>>> main('1054698')
'0x47ea'

>>> main('893598')
'0x329e'

Вариант №35

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('20208639')
'0x2fd401f'

>>> main('60644251')
'0x2e5e01b'

>>> main('55178028')
'0xcfd00c'

>>> main('33128035')
'0x39f7003'

Вариант №36

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('449550271')
'361953263'

>>> main('111543747')
'222358640'

>>> main('397256427')
'257227706'

>>> main('70069483')
'138803770'

Вариант №37

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main({'U2': '0', 'U3': '153', 'U4': '56'})
'0x382640'

>>> main({'U2': '0', 'U3': '417', 'U4': '36'})
'0x246840'

>>> main({'U2': '0', 'U3': '295', 'U4': '61'})
'0x3d49c0'

>>> main({'U2': '0', 'U3': '120', 'U4': '11'})
'0xb1e00'

Вариант №38

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('11786414624')
{'T1': '0x20', 'T2': '0x2', 'T3': '0x9a', 'T4': '0x21', 'T5': '0x2be'}

>>> main('16167615164')
{'T1': '0xbc', 'T2': '0x2', 'T3': '0x8e', 'T4': '0x2a', 'T5': '0x3c3'}

>>> main('8894459282')
{'T1': '0x92', 'T2': '0x1', 'T3': '0xab', 'T4': '0x9', 'T5': '0x212'}

>>> main('219207081')
{'T1': '0xa9', 'T2': '0x1', 'T3': '0x35', 'T4': '0x4', 'T5': '0xd'}

Вариант №39

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main([('V1', '20'), ('V2', '9'), ('V3', '1'), ('V4', '173')])
'11379732'

>>> main([('V1', '464'), ('V2', '4'), ('V3', '1'), ('V4', '142')])
'9343440'

>>> main([('V1', '552'), ('V2', '26'), ('V3', '0'), ('V4', '152')])
'9988648'

>>> main([('V1', '994'), ('V2', '6'), ('V3', '0'), ('V4', '88')])
'5774306'

Вариант №40

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main([('H2', 1), ('H3', 54), ('H4', 7), ('H5', 5), ('H6', 9)])
'81685632'

>>> main([('H2', 0), ('H3', 81), ('H4', 6), ('H5', 0), ('H6', 7)])
'59548160'

>>> main([('H2', 2), ('H3', 76), ('H4', 5), ('H5', 3), ('H6', 23)])
'196778240'

>>> main([('H2', 2), ('H3', 124), ('H4', 4), ('H5', 5), ('H6', 31)])
'265877760'