В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
taniamishanina
taniamishanina
01.04.2023 21:37 •  Информатика

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

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

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

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

Показать ответ
Ответ:
strizhnevan
strizhnevan
22.10.2021 03:00
Const n=15; 
var a:array[1..n] of integer;
i,s:integer; sr:real;
begin
Randomize;
writeln('Массив:');
for i:=1 to n do
 begin
 a[i]:=random(21);
 write(a[i]:3);
 end;
writeln;
s:=0;
for i:=1 to n do s:=s+a[i];
sr:=s/n;
writeln('Среднее арифметическое = ',sr:6:2);
writeln('Номера элементов, больших среднего арифметического:');
for i:=1 to n do
 if a[i]>sr then write(i:3);
writeln;
end.

Пример:
Массив:
  9 19 14 8 7 10 5 10 6 14 15 2 11 17 13
Среднее арифметическое = 10.67
Номера элементов, больших среднего арифметического:
  2 3 10 11 13 14 15
0,0(0 оценок)
Ответ:
amusabekova
amusabekova
18.03.2023 07:14
// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
  var a:=ArrRandom(ReadInteger('n='),1,99);
  a.Println;
  var k:=ReadInteger('k=');
  Writeln('Сумма чисел, кратных ',k,': ',
    a.Where(x->x mod k=0).Sum)
end.

Тестовое решение:
n= 18
45 17 36 15 65 17 97 44 49 43 60 51 66 72 18 55 71 85
k= 12
Сумма чисел, кратных 12: 168

// PascalABC.NET 3.1, сборка 1218 от 12.04.2016
begin
  var a:=ArrRandom(ReadInteger('n='),1,20);
  a.Println;
  a.Where((x,i)->x=i+1).Println
end.

Тестовое решение:
n= 16
17 2 1 14 20 19 10 3 9 15 14 4 2 7 2 16
2 9 16
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота