Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('7710274')
'3042882'
>>> main('2261977')
'1324249'
>>> main('1794803')
'5907187'
>>> main('3420140')
'2291436'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(4019358260)
'662603985'
>>> main(2209876085)
'1948164481'
>>> main(132611092)
'3359543407'
>>> main(3982584712)
'3345550893'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('3', '1', '31', '120', '0'))
61695
>>> main(('3', '0', '59', '36', '0'))
18907
>>> main(('0', '1', '29', '63', '0'))
32492
>>> main(('0', '1', '1', '80', '1'))
106508
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('2153935')
'0x2e7b83'
>>> main('174674')
'0x2954a'
>>> main('1455329')
'0x170e98'
>>> main('1003499')
'0xf59fd'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0xbabce')
'Z1': 0, 'Z2': 1, 'Z3': 19, 'Z5': 5}
{
>>> main('0xa4f11')
'Z1': 1, 'Z2': 0, 'Z3': 4, 'Z5': 5}
{
>>> main('0x3b1c5')
'Z1': 1, 'Z2': 0, 'Z3': 17, 'Z5': 1}
{
>>> main('0xc707b')
'Z1': 1, 'Z2': 1, 'Z3': 30, 'Z5': 6} {
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('G1', '1'), ('G2', '419'), ('G3', '247'), ('G4', '0')])
'4060257'
>>> main([('G1', '9'), ('G2', '4'), ('G3', '145'), ('G4', '11')])
'94650505'
>>> main([('G1', '15'), ('G2', '109'), ('G3', '166'), ('G4', '0')])
'2723247'
>>> main([('G1', '8'), ('G2', '13'), ('G3', '501'), ('G4', '12')])
'108872104'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x296ef38d8f')
'0xf', '0x11b', '0x3', '0x0', '0x2ef', '0xa5')
(
>>> main('0x22923f48e')
'0xe', '0x1e9', '0x3', '0x0', '0x292', '0x8')
(
>>> main('0x3ac8522815')
'0x15', '0x50', '0x2', '0x0', '0x85', '0xeb')
(
>>> main('0x760c727b')
'0x7b', '0xe4', '0x4', '0x1', '0x360', '0x1') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'S2': '287', 'S3': '21', 'S4': '7', 'S5': '414', 'S6': '9'})
'0x12cf7ac7c00'
>>> main({'S2': '38', 'S3': '2', 'S4': '0', 'S5': '425', 'S6': '6'})
'0xcd48109800'
>>> main({'S2': '53', 'S3': '1', 'S4': '3', 'S5': '658', 'S6': '2'})
'0x549308d400'
>>> main({'S2': '269', 'S3': '5', 'S4': '0', 'S5': '8', 'S6': '11'})
'0x160402c3400'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x6ec7c6d')
'58245563'
>>> main('0x7bb4b4e')
'60195310'
>>> main('0x588300f')
'65012066'
>>> main('0x28816b4')
'86851746'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('294333895')
'418482539'
>>> main('272811740')
'462439986'
>>> main('191161972')
'244016948'
>>> main('445764914')
'106600105'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('D2', '24'), ('D3', '0'), ('D4', '1'), ('D5', '351'), ('D6', '0')])
'359984'
>>> main([('D2', '85'), ('D3', '0'), ('D4', '0'), ('D5', '365'), ('D6', '1')])
'898218'
>>> main([('D2', '92'), ('D3', '0'), ('D4', '0'), ('D5', '256'), ('D6', '0')])
'262328'
>>> main([('D2', '71'), ('D3', '0'), ('D4', '1'), ('D5', '359'), ('D6', '0')])
'368270'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('10', '4', '0', '9'))
'4756'
>>> main(('13', '0', '0', '34'))
'17434'
>>> main(('1', '7', '0', '47'))
'24290'
>>> main(('6', '1', '1', '25'))
'13100'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('2068551797')
117, 920, 2, 2, 123)
(
>>> main('2140489804')
76, 328, 5, 4, 127)
(
>>> main('355998680')
216, 27, 6, 1, 21)
(
>>> main('31839953')
209, 470, 1, 7, 1) (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('K1', '122'), ('K3', '597'), ('K4', '57')])
'3864330362'
>>> main([('K1', '172'), ('K3', '505'), ('K4', '81')])
'5468913836'
>>> main([('K1', '22'), ('K3', '748'), ('K4', '45')])
'3068919830'
>>> main([('K1', '188'), ('K3', '571'), ('K4', '93')])
'6278545596'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x68c0ce6da')
'0xda', '0xe6', '0x6', '0x0', '0x23', '0x6')
(
>>> main('0x29c9eaba6')
'0xa6', '0xab', '0xf', '0x2', '0x27', '0x2')
(
>>> main('0x6104669f6')
'0xf6', '0x69', '0x3', '0x1', '0x4', '0x6')
(
>>> main('0x13e58ed49')
'0x49', '0xed', '0xc', '0x9', '0xf', '0x1') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'Q1': 27, 'Q2': 89, 'Q3': 726, 'Q4': 187, 'Q5': 83})
'357269596987'
>>> main({'Q1': 22, 'Q2': 101, 'Q3': 537, 'Q4': 547, 'Q5': 57})
'247109622966'
>>> main({'Q1': 10, 'Q2': 97, 'Q3': 162, 'Q4': 227, 'Q5': 123})
'529233751082'
>>> main({'Q1': 21, 'Q2': 81, 'Q3': 427, 'Q4': 149, 'Q5': 114})
'490252974645'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('4', '4', '210', '1', '13'))
896082944
>>> main(('6', '6', '355', '0', '19'))
1286714880
>>> main(('0', '8', '396', '1', '26'))
1774600192
>>> main(('2', '0', '82', '1', '21'))
1428750848
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(1194249)
'1369156'
>>> main(8035055)
'8285015'
>>> main(8398320)
'8951320'
>>> main(7539728)
'7352424'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x9930cb26')
'B1', 2), ('B2', 713), ('B3', 12), ('B4', 24), ('B5', 2), ('B6', 76)]
[(
>>> main('0xad402cbb')
'B1', 3), ('B2', 814), ('B3', 2), ('B4', 32), ('B5', 2), ('B6', 86)]
[(
>>> main('0x29835fad')
'B1', 1), ('B2', 1003), ('B3', 21), ('B4', 1), ('B5', 3), ('B6', 20)]
[(
>>> main('0xcf59c047')
'B1', 3), ('B2', 17), ('B3', 28), ('B4', 44), ('B5', 2), ('B6', 103)] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0xf738246a')
'1785664156'
>>> main('0x18366fb59')
'5791841715'
>>> main('0xef8ec195')
'6810394823'
>>> main('0x3b646994')
'6788691122'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(1041691)
2041403
>>> main(1164865)
931969
>>> main(1875486)
327222
>>> main(862980)
611852
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(531140)
4, 6, 13, 1, 0)
(
>>> main(1191081)
9, 5, 278, 0, 1)
(
>>> main(1922208)
0, 5, 682, 1, 1)
(
>>> main(1375817)
9, 2, 639, 0, 1) (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'R1': 11, 'R2': 5, 'R3': 83, 'R4': 58, 'R5': 196, 'R6': 840})
14434386136155
>>> main({'R1': 9, 'R2': 30, 'R3': 50, 'R4': 98, 'R5': 742, 'R6': 826})
14203033537001
>>> main({'R1': 14, 'R2': 16, 'R3': 78, 'R4': 127, 'R5': 279, 'R6': 314})
5399176493326
>>> main({'R1': 14, 'R2': 62, 'R3': 73, 'R4': 84, 'R5': 483, 'R6': 36})
626589771758
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'S2': '0x14', 'S3': '0xf6', 'S4': '0x3', 'S5': '0x3'})
31962368
>>> main({'S2': '0xd', 'S3': '0x227', 'S4': '0x0', 'S5': '0x3'})
26295104
>>> main({'S2': '0x0', 'S3': '0x111', 'S4': '0x0', 'S5': '0x2'})
17336320
>>> main({'S2': '0xd', 'S3': '0x240', 'S4': '0x2', 'S5': '0x1'})
13763392
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main(('0x1', '0x3c3', '0x1c', '0x138', '0x64', '0x24c'))
40413804220173
>>> main(('0x1', '0x82', '0xb', '0x3b', '0x3d1', '0x1b3'))
29958545519113
>>> main(('0x3', '0x37b', '0xc', '0x124', '0x2fc', '0x77'))
8228927229423
>>> main(('0x3', '0x1fc', '0x10', '0x10b', '0x2dd', '0x118'))
19290679347187
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0xf3c6cd18')
232259691271
>>> main('0x199b83cf5')
6874177164
>>> main('0x6036da0e2')
193330945072
>>> main('0x59f393cec')
41326058924
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('K2', '2'), ('K3', '1016'), ('K4', '3'), ('K5', '45'), ('K6', '3')])
112525192
>>> main([('K2', '1'), ('K3', '471'), ('K4', '11'), ('K5', '102'), ('K6', '0')])
26926452
>>> main([('K2', '3'), ('K3', '520'), ('K4', '13'), ('K5', '45'), ('K6', '5')])
179789964
>>> main([('K2', '1'), ('K3', '468'), ('K4', '13'), ('K5', '36'), ('K6', '5')])
177429828
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0xe1', '0x3d0', '0x67', '0x27', '0x0'))
'0x9d9fd0e1'
>>> main(('0x6f', '0x32', '0x2', '0x12', '0x9'))
'0x94808326f'
>>> main(('0x61', '0x199', '0xff', '0x29', '0x6'))
'0x6a7fd9961'
>>> main(('0xc2', '0x1e4', '0xb7', '0x9', '0x1'))
'0x126dde4c2'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('595')
'0x94000'
>>> main('103826')
'0x64065'
>>> main('709262')
'0xa32b4'
>>> main('39949')
'0x3027'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(38894)
487627
>>> main(33957)
338050
>>> main(37713)
166089
>>> main(53603)
202984
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('D1', '0xc'), ('D2', '0x0'), ('D3', '0x2c'), ('D4', '0x3a'), ('D6', '0x1d0')])
996434318860
>>> main([('D1', '0x0'), ('D2', '0x1'), ('D3', '0x0'), ('D4', '0x0'), ('D6', '0x133')])
659277479952
>>> main([('D1', '0x3'), ('D2', '0x2'), ('D3', '0xbf'), ('D4', '0x15'), ('D6', '0x166')])
768799858595
>>> main([('D1', '0xe'), ('D2', '0x7'), ('D3', '0x45'), ('D4', '0x31'), ('D6', '0x166')])
768800760574
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(4359864)
'W1': '0x0', 'W3': '0x0', 'W4': '0x214'}
{
>>> main(2886601)
'W1': '0x1', 'W3': '0x1', 'W4': '0x160'}
{
>>> main(7666030)
'W1': '0x2', 'W3': '0x3', 'W4': '0x3a7'}
{
>>> main(3543276)
'W1': '0x0', 'W3': '0x2', 'W4': '0x1b0'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('77597800596')
87103385672
>>> main('79272267088')
72249704137
>>> main('77955409028')
19749175624
>>> main('15786213563')
118917295758
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0xe71637')
20649527
>>> main('0x1707e32')
25525810
>>> main('0x1077eaa')
3964586
>>> main('0xb860a6')
29515942
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('J1', '18'), ('J2', '11'), ('J3', '1'), ('J4', '4'), ('J6', '1')])
271730
>>> main([('J1', '29'), ('J2', '23'), ('J3', '1'), ('J4', '0'), ('J6', '0')])
1789
>>> main([('J1', '8'), ('J2', '27'), ('J3', '1'), ('J4', '6'), ('J6', '0')])
14184
>>> main([('J1', '11'), ('J2', '2'), ('J3', '0'), ('J4', '2'), ('J6', '1')])
266315
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(19380805)
8019154
>>> main(10426978)
32517171
>>> main(19055065)
2986190
>>> main(28728804)
23351023
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main(('0x6', '0x1f4', '0x32', '0x23'))
300186886
>>> main(('0x4', '0x29c', '0x14', '0x16'))
187213572
>>> main(('0x3e', '0x1d7', '0x20', '0x7'))
62944766
>>> main(('0x11', '0x2c3', '0x35', '0x15'))
183152849
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('895561')
'1', '2', '41', '45', '1')
(
>>> main('496130')
'2', '0', '72', '60', '0')
(
>>> main('627246')
'2', '11', '72', '12', '1')
(
>>> main('878691')
'3', '8', '33', '43', '1') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('324', '311', '84', '727', '525', '246'))
'8673418812747588'
>>> main(('284', '5', '112', '533', '656', '432'))
'15222206644620060'
>>> main(('421', '175', '117', '720', '1020', '469'))
'16536541632749477'
>>> main(('454', '362', '72', '2', '1007', '513'))
'18084183224276422'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(135126)
'T2': '31', 'T3': '1', 'T4': '16'}
{
>>> main(71599)
'T2': '30', 'T3': '2', 'T4': '8'}
{
>>> main(110408)
'T2': '29', 'T3': '1', 'T4': '13'}
{
>>> main(251981)
'T2': '1', 'T3': '3', 'T4': '30'} {