Источник: https://kpolyakov.spb.ru/
Для хранения длинных чисел можно использовать алгоритм кодирования повторов (RLE), который заменяет повторяющиеся цифры (серии) на одну цифру и число её повторов.
Например, число 5999 после сжатия станет числом 1539.
Если длина серии превосходит 9, она разбивается на несколько серий длиной 9 и, возможно, ещё одну длиной меньше 9. После сжатия производится поразрядное кодирование, все цифры кодируются одинаковым и минимально возможным количеством бит.
Сколько байт потребуется для сжатия и кодирования указанным способом числа 12300000000000555?
Найдем результат применения алгоритма (RLE) к числу 12300000000000555:
Для кодирования одного символа нужно 4 бита (так как ).
Значит, для сжатия и кодирования данного числа, длина которого равна 12, необходимо