nosorpg02
27.10.2022 04:13

1.Для кодирования последовательности символов, состоящих из бук В, О, Л, К, используется неравномерный двоичный код, который удовлетворяет условию
Фано. При этом для буквы В используется код 1, а для буквы О – код 00.
Требуется определить наименьшую возможную суммарную длину всех кодовых
слов указанных букв.
2. Для кодирования последовательности символов, состоящих из бук З, А, Я, Ц,
используется неравномерный двоичный код, который удовлетворяет условию
Фано. При этом для буквы З используется код 0, а для буквы А – код 11.
Требуется определить наименьшую возможную суммарную длину всех кодовых
слов указанных букв.
3. По каналу связи передаются сообщения, содержащие только четыре буквы: A, B,
C, D. Для передачи используется неравномерный двоичный код, допускающий
однозначное декодирование. Для букв A, B, C используются такие кодовые
слова: A: 001011, B: 100110, C: 110010. Требуется определить наименьшее
кодовое слово для буквы D, которое будет удовлетворять условию Фано. Если
таких слов несколько, то необходимо указать слово, код которого будет иметь
наименьшее числовое значение.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
az0967848
29.03.2022 14:08

#include <iostream>

using namespace std;

int main() {

bool Flag = false;

int N, max, min;

cin >> N;

int* array = new int[N];

for (int i = 0; i < N; i++) {

 cin >> array[i];

 if (array[i] % 2 == 0 && array[i] > 0) {

  max = array[i];

  min = array[i];

  Flag = true;

 }

}

if (Flag == false) {

 cout << -1 << " " << -1;

}

else {

 for (int i = 0; i < N; i++) {

  if (array[i] > max && array[i] % 2 == 0 && array[i] > 0)

   max = array[i];

  else if (array[i] < min && array[i] % 2 == 0 && array[i] > 0)

   min = array[i];

 }

 cout << min << " " << max;

}

delete[] array;

return 0;

}

0,0(0 оценок)
Ответ:
КcюшA123
17.05.2022 21:04

55:5=11

365:11≈33(34) берём "34", чтобы перехлестнуть 365.

Так как 11-ый член является замыкающим (перехлёстывающим 365), тогда смотрим по ближайшим:

34*10=340 (340+34=374) - подходит, но это не максимум!

365 mod 10= 36, а это значит, что последующий член будет больше 365, а именно 395.

В задании сказано, что d должно быть максимальным, а "34" - это допустимое, но не максимально число, удовлетворяющее условию, даже минимальное (по результату).

Проверка:

34*11=374, значит, когда на экране выведется s:=340, n:=50, то, зайдя по следующему циклу, получится, что s:= 374, n:=55. На следующий цикл программа не пойдёт.

ответ: d=34. 

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота