Скажем, есть массив из 1024 битов, которые являются нулями:
пример: [0,0,0,0,0,0,0, ...]
Затем я перезаписываю 20 нулей на совершенно случайные позиции:
пример: [0,1,0,0,0,0,0, ...]
Какое теоретическое минимальное количество битов необходимо для кодирования местоположения этих 20 случайно размещенных битов, при условии, что у меня был идеальный кодер?
Я знаю, что есть уравнения теории связи, которые скажут мне об этом, но я хочу перепроверить мои вычисления.
Более сложный бонусный вопрос: Покажите мне код для алгоритма, который реализует кодировку, которая приближается к этому минимальному пределу.
Бонусный бонус: что если бит переходит туда, где уровень байтов, а не уровень бит? например целые байты перевернулись. Тот же результат?