Могут встретиться задачи не про звук, а про фотографии. Формула другая, порядок действий тот же: $W$ и $H$ – размер в пикселях, $i$ – глубина цвета, то есть сколько бит тратится на один пиксель.
Условие. Прибор автоматической фиксации нарушений ПДД делает цветные фотографии размером 1024×960 пикселей, используя палитру из 16 384 цветов. Для передачи снимки группируются в пакеты по 400 штук. Определите размер одного пакета фотографий в Мбайт. В ответе запишите целую часть полученного числа.
-
Палитра – это не биты. Глубина цвета – двоичный логарифм от числа цветов: $i = \lceil \log_2 N \rceil$. Здесь $\log_2 16384 = 14$ ровно, так что на пиксель уходит 14 бит.
Скобки – это округление вверх, и оно обязательно. Пусть цветов было бы 300: $\log_2 300 \approx 8{,}23$, но 8 бит хранят только 256 цветов – всей палитре не хватит. Значит нужно 9 бит, и часть их комбинаций просто останется неиспользованной. Бит нельзя взять дробным, а недобрать – тем более.
В формулу идёт глубина, а не число цветов.
-
Перемножьте всё подряд. $1024 \cdot 960 \cdot 14 \cdot 400 = 5505024000$ бит – размер пикселя, глубина и число снимков в одном действии.
- Делите на 8 и на 1024 столько раз, сколько нужно. $5505024000 / 8 = 688128000$ байт, $688128000 / 1024 = 672000$ Кбайт, $672000 / 1024 = 656,25$ Мбайт.
| Шаг |
Что считаем |
На калькуляторе |
Результат |
| 1 |
Пикселей на снимке |
$1024 \cdot 960$ |
983 040 пикселей |
| 2 |
Бит на снимок |
$983040 \cdot 14$ |
13 762 560 бит |
| 3 |
Бит в пакете из 400 снимков |
$13762560 \cdot 400$ |
5 505 024 000 бит |
| 4 |
Байты – делим на 8 |
$5505024000 / 8$ |
688 128 000 байт |
| 5 |
Кбайты – делим на 1024 |
$688128000 / 1024$ |
672 000 Кбайт |
| 6 |
Мбайты – делим ещё раз |
$672000 / 1024$ |
656,25 Мбайт |
Последнее деление дало дробь. Ответ – 656, потому что последняя строка условия просит целую часть. Не «округлите», не «сколько нужно памяти» – именно целую часть.
Прочие жанры номера – те же две формулы, прочитанные в другую сторону. «Сколько трафика экономится» – посчитать объём до и после, вычесть и не забыть про число снимков. «Сколько цветов можно использовать, если отведено столько-то памяти» – найти глубину $i$ и ответить числом цветов. «Сколько снимков влезет в пакет за столько-то секунд» – умножить скорость на время и поделить на объём снимка.