Johngear
05.09.2020 23:38

Содержание ↑ В этой задаче вам нужно картинку из чёрных и белых пикселей закодировать как можно более короткой строкой по описанным ниже правилам.
Картинка представляет собой прямоугольную таблицу, каждая клеточка которой покрашена в чёрный или белый цвет. Сначала чёрные клеточки обозначаются буквой «B», белые клеточки обозначаются буквой «W». Затем буквы из таблицы записываются подряд в одну строку: сначала первая строка, затем вторая и т. д.
Например, пусть дана следующая картинка:

Обозначим клеточки буквами

Теперь запишем все буквы в одну строку: «WBBBWBBBW».
Далее эту строку можно сжать, используя следующие правила.
Если перед буквой записано число, то это означает повторение данной буквы указанное число раз. Например, вместо «BBB» можно написать «3B».
После числа можно написать не одну букву, а последовательность букв в скобках.
Например, запись «4(BW)» будет означать последовательность «BWBWBWBW».
Также внутри скобок могут быть записаны не только буквы «B» и «W», но и любые правильно закодированные последовательности, в т.ч. содержащие числа и скобки.
Приведённую выше картинку можно закодировать, например, таким
Дана следующая картинка. Закодируйте её при как можно более короткой последовательности.

ответ на эту задачу необходимо записать в виде строки, состоящей из букв «B» и «W», чисел и скобок, последовательность должна быть корректной и после распаковки должна соответствовать приведённой картинке. При сдаче задачи проверяется корректность последовательности и то, что в результате распаковки будет получена данная картинка. Если последовательность некорректна или не соответствует картинке, ваше решение получит статус «Неверный формат ответа».
Чем короче будет ваше решение, тем больше вы получите. При подсчёте длины решения учитываются все символы: буквы, цифры и скобки.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
лиза2740
17.12.2022 16:34
A. Решение на калькуляторе

1. Находим общее количество пикселей
n = 1024×768 = 786432
2. Находим количество бит, необходимое для отображения цвета одного пикселя
k=㏒₂64 = 6 (или просто вспоминаем, что 64=2⁶)
3. Определяем объем информации в битах
I = n×k = 786432×6 = 4718592 бит
4. Переводим в более крупные единицы
- в байты: 1 байт=8 бит; 4718592 бит/8 = 589824 байт
- в Кбайты: 1 Кбайт=1024 байта; 589824 байт/1024 = 576 Кбайт
- в Мбайты: 1 Мбайт=1024 Кбайта;  576 Кбайт/1024 = 0.5625 Мбайт.

Б. Решение "в степенях двойки"

1. Находим общее количество пикселей
n = 1024×768 = 2¹⁰×2⁹×1.5 = 2¹⁹×1.5
2. Находим количество бит, необходимое для отображения цвета одного пикселя
k=㏒₂64 = 6 (или просто вспоминаем, что 64=2⁶)
3. Определяем объем информации в битах
I = n×k = 2¹⁹×1.5×6 = 2¹⁹×9 бит
4. Переводим в более крупные единицы
- в байты: 1 байт=2³ бит; 2¹⁹×9 бит/2³ = 2¹⁶×9 байт
- в Кбайты: 1 Кбайт=2¹⁰ байт;  2¹⁶×9 байт/2¹⁰ = 2⁶×9 Кбайт = 64×9 = 576 Кбайт
- в Мбайты: 1 Мбайт=2¹⁰ Кбайт; 2⁶×9 Кбайт/2¹⁰ = 2⁻⁴×9 Мбайт = 9/16 Мбайт = 0.5625 Мбайт.
0,0(0 оценок)
Ответ:
polibfbxbdbdbcb
25.09.2021 00:40
Var InFile, OutFile: text; // Вводной и выводной файлы
Var a,b,c, D, Result : Integer;
Assign(InFile, "C:\kvur.txt");
Assign(OutFile, "C:\korni.txt")
Reset(InFile)
Read(InFile,a)
Read(InFile,b)
Read(InFile, c)
D = sqr(b) + 4*a*c
if D = 0 then
Write("Уравнение не имеет корней")
Else
  Append(OutFile)
  Result:=(-b + sqrt(D)) / 2 * a
  Write(OutFile,Result)
  Write("Корень уравнения")
  WriteLn(Result)
  if (D>0) then
    Result:=(-b - sqrt(D)) / 2 * a
    Write(OutFile, Result)
    Write("Второй корень уравнения")
    Write(Result)
  End;
End.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота