Условие: Тип 7 № 35981
• Статья подготовлена командой itpy
• Полный разбор задачи в Notion
В информационной системе хранятся изображения размером 2048 × 1536 пк.
При кодировании используется алгоритм сжатия изображений, позволяющий уменьшить размер памяти для хранения одного изображения в среднем в 8 раз по сравнению с независимым кодированием каждого пикселя.
Каждое изображение дополняется служебной информацией, которая занимает 128 Кбайт.
Для хранения 32 изображений потребовалось 16 Мбайт.
Сколько цветов использовано в палитре каждого изображения?
Решение через Python и комментарии к нему:
Комментарии к коду решения:
- I = (16 * 2 ** 23) / 32 - Вычисление веса одного изображения с дополнительной информацией и сжатием.
- I = I - (128 * 2**13) - Вычисление веса одного изображения только с сжатием.
- I = I * 8 - Вычисление веса одного изображения после уменьшения размера в 8 раз.
- i = I / (2048 * 1536) - Вычисление отношения веса одного изображения к общему размеру изображения.
- Colors = 2 ** i - Вычисление количества цветов в палитре каждого изображения.
- print(f"Цветов использовано в палитре: {Colors}") - Вывод результата.