feho
14.06.2021 21:25

Решите по программированию.
: одномерный японский кроссворд

не так давно петя узнал, что такое японский кроссворд. японский кроссворд — это изображение, представляемое таблицей размера a × b квадратных клеток, каждая из которых имеет либо белый, либо черный цвет. слева от строк и сверху от столбцов располагаются числа, которые шифруют данную строку или столбец. количество чисел показывает, сколько групп чёрных клеток находятся в соответствующей строке или столбце, а сами числа — сколько идущих подряд чёрных клеток содержит каждая из этих групп.

петя счел общий случай японского кроссворда слишком сложным и нарисовал строку из n клеток (то есть японский кроссворд размера 1 × n), которую он хочет зашифровать числами так же, как в японском кроссворде.

пример шифрования одной строки японского кроссворда.
петя найти числа, шифрующие нарисованную им строку кроссворда.

входные данные
в первой строке содержится целое положительное число n (1 ≤ n ≤ 100) — длина строки. во второй строке содержится строка, состоящая из n символов 'b' или 'w', ('b' соответствует черной клетке, 'w' — белой клетке в строке, нарисованной петей).

выходные данные
в первой строке должно содержаться целое неотрицательное число k — количество чисел, шифрующих строку, то есть количество групп черных клеток в строке.

во второй строке должно содержаться k целых чисел, шифрующих строку, то есть соответствующих размерам групп последовательных черных клеток в порядке слева направо.

пример:
ввод:
3
bbw
вывод:
1
2

напишите программу на языке pascalabc.net (желательно) или "c", максимально понятно и просто.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Vladimir26ru
24.05.2023 09:33

1) 

Пользуемся вот этой формулой: I = hit, где

I  объем файла,

h - частота дискретизации, h=40кГц = 40 000 Гц

i - минимальное количество бит, i=16

t - длительность звучания файла в секундах, t=3мин = 180с

I = 115200000 бит = 115200000/8 байт = 14400000 байт = 1440000/1024 кБайт = 14062,5 кБайт

 

2)

Пользуемся теперь этими формулами

I = ki

N = 2^i

, где

I - объем изображения,

k - количество пикселей, k = 100*300=30000

i - минимальное количество бит, нужное для кодирования одного пикселя

N - палитра цветов, N = 16384

В какую степень надо возвести 2, чтобы получилось 16384?

2^1^4 = 16384

Значит, по формуле i = 14

I = 30000*14=420000 бит = 420000/8 байт = 52500 байт = 52500/1024 Кбайт = 51,27 Кбайт

0,0(0 оценок)
Ответ:
Angelina626
04.11.2022 09:58
1) log2(64) = 6, на 1 пиксель нужно 6 бит, а всего 6 * 128 * 256 бит = 6 * 16 * 256 байт = 6*4 Кб = 24 Кб (1 байт = 8 бит, 1 Кб = 1024 байт)
2) 5 бит на пиксель, 5 * 128 * 128 бит = 10 Кб
3) 7 бит на пиксель, 7 * 64 * 128 бит = 7 Кб
4) 8 бит на пиксель, 8 * 64 * 256 бит = 16 Кб
5) 7 бит на пиксель, 7 * 32 * 1024 бит = 28 Кб
6) 6 бит на пиксель, 6 * 1024 * 512 бит = 384 Кб
7) 5 бит на пиксель, 80 Кб
8) 4 бита на пиксель, 32 Кб
9) 3 бита на пиксель, 12 Кб
10) 8 бит на пиксель, 16 Кб
11) 24 Кб = 24 * 1024 байт = 24 * 1024 * 8 бит, на 1 пиксель приходится (24 * 1024 * 8) / (128 * 256) = 6 бит. По формуле N = 2^i получаем 2^6 = 64 возможных цветов.
12) 10 Кб = 10 * 1024 * 8 бит, на 1 пиксель (10 * 1024 * 8) / (128 * 128) = 5 бит на пиксель, 2^5 = 32 цвета.
13) 7 бит на пиксель, 128 цветов
14) 8 бит на пиксель, 256 цветов
15) 7 бит на пиксель, 128 цветов
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота