Найти в Дзене
Романов учит

Разбор всех задач с kompege.ru Ч.17

Оглавление

№ 771 Джобс 30.11.2020 (Уровень: Сложный)

20 изображений разрешением 1600х1200 пикселей отправили по каналу связи со средней пропускной способностью 2^23 бит/секунду. Все изображения были приняты приемником не более, чем 10 секунд.Известно, что изображение кодируется, как набор пикселей, каждый из которых закодирован с помощью одинакового и минимально возможного количества бит. Изображения в целях ускорения передачи записаны в памяти подряд, без разделителей и заголовков.

Какое максимальное число цветов может быть в палитре?

Решение

1. Определение общего количества пикселей:

Каждое изображение имеет разрешение 1600×1200 пикселей, всего изображений 20.

Общее количество пикселей=20×1600×1200=38 400 000 пикселей

2. Вычисление общего объема данных (в битах):

Канал связи передает данные со скоростью 2^23 бит/секунду, и передача заняла не более 10 секунд.

Общий объем данных=223×10=83 886 080 бит

3. Определение количества бит на пиксель (b):

Общий объем данных равен произведению количества пикселей на количество бит, используемых для кодирования одного пикселя (b).

38 400 000×b≤83 886 080

b <= 83 886 080​/ 38 400 000≈2.18 бит/пиксель

Поскольку b должно быть целым числом (так как каждый пиксель кодируется целым числом бит), максимальное возможное значение b=2.

4. Расчет максимального количества цветов (NN):

Количество цветов определяется количеством бит на пиксель:

N=2^b=2^2=4 цвета

№ 490 Джобс 19.10.2020 (Уровень: Сложный)

Известно, что для сохранения изображения выделяется не более 320 Кбайт.
Изображение кодируется без сжатия, каждый пиксель может быть окрашен в
один из 4096 цветов.

Укажите максимальное количество пикселей, содержащихся в изображении, если известно, что отношение сторон изображения 4:3.

Решение:

1. Определение количества бит на пиксель (bb):

Каждый пиксель может быть окрашен в один из 4096 цветов. Для кодирования такого количества цветов требуется:

N=2b=4096 ⟹ b=log⁡2(4096)=12 бит/пиксель

2. Перевод выделенного объема памяти в биты:

Выделено не более 320 Кбайт. Переведем в биты:

320 Кбайт=320×8 Кбит=320×8×1024 бит=2 621 440 бит

3. Вычисление максимального количества пикселей (PP):

Объем данных равен произведению количества пикселей на количество бит на пиксель:

P×12≤2 621 440 ⟹ P≤2 621 440 / 12≈218 453.(3)

Поскольку количество пикселей должно быть целым числом, максимальное значение P=218 453.

4. Учет отношения сторон 4:3:

Пусть ширина изображения 4x, а высота 3x. Тогда общее количество пикселей:

P=4x×3x=12x^2≤218 453

x^2≤218 453​ / 12 ≈18 204.4167⟹x≤(18204.4167)^0.5​≈134.92

Берем целую часть x=134, тогда:

P=12×134^2=12×17 956=215 472 пикселей

Проверим для x=135:

P=12×135^2=12×18 225=218 700 пикселей

Но 218 700>218 453, поэтому x=134 — максимальное целое значение, удовлетворяющее условию.

5. Проверка объема памяти для P=215 472:

215 472×12=2 585 664 бит≤2 621 440 бит

Для P=218 453 (без учета отношения сторон):

218 453×12=2 621 436 бит≤2 621 440 бит

Но 218 453 не кратно 12x^2 при целых x, поэтому максимальное количество пикселей с учетом отношения сторон 4:3 — 215 472.

Если у вас остались вопросы, хотите разобраться, хотите подготовиться к ЕГЭ/ОГЭ по информатике или изучить программирование на языке Python - добро пожаловать на пробный урок в телеграм t.me/MikhailRomanov

Не забывайте подписываться на канал! Таким образом вы помогаете выходу новых разборов!

А также ставьте лайк, пишите комментарии.
ЖМИ НА ССЫЛКУ СНИЗУ ДЛЯ НАВИГАЦИИ ПО РЕШЕНИЯМ
Тут все разборы собраны воедино