АнтонАртем
?>

Для кодирования некоторой последовательности, состоящей из букв а б и г д используется неравномерный двоичный код позволяющий однозначно декодировать полученную двоичную последовательность. этот код а-11 б-110 в-101 г-000 д-010 .требуется сократить для одной из букв длину кодового слова так, чтоб код по прежнему можно было декодировать однозначно.код остальных букв меняться не должны.каким из указанных это можно сделать? 1)это невозможно 2)для буквы-10 3)для буквы-01 4)для буквы-10.

Информатика

Ответы

gallows-warlike-0z

ответ: 1 - Это не возможно, т.к все коды имеют одну длину, и т.к их 5, то  занято 5 из 6 ветвей, т.е сократить не возможно


Для кодирования некоторой последовательности, состоящей из букв а б и г д используется неравномерный
nevasoundmsk36
[l,r,строка,номер]
[0, 0, "a", 1]
[1, 1, "b", 2]
[1, 2, "bb", 3]
[2, 2, "b", 4]
[0, 3, "abba", 5]
[3, 3, "a", 6]
[3, 4, "aa", 7]
[4, 4, "a", 8]
[3, 5, "aaa", 9]
[4, 5, "aa", 10]
[5, 5, "a", 11]
[3, 6, "", 12]
[4, 6, "aaa", 13]
[5, 6, "aa", 14]
[6, 6, "a", 15]
[2, 7, "bb", 16]
[7, 7, "b", 17]
[6, 8, "aba", 18]
[8, 8, "a", 19]
[7, 9, "bab", 20]
[9, 9, "b", 21]

#код программы Ruby 22
s = "abbbab"
n = 0
for r in 0..s.size-1
    for l in 0..r
        t = s[l..r]
        if t.reverse == t
            n += 1
            p [l,r,t,n]
        end
    end
end
ПодлеснаяМакарова1883
Думаю нет большой разницы между процедурой и функцией, просто функция куда удобнее.
Для нахождения нода используется алгоритм Эвклида

//PascalABC.Net

function NOD(A, B: integer): integer;
begin
    while A <> B do
        if A > B then A := A - B else B := B - A;
    NOD := A;
end;

procedure pNOD(A, B: integer; var NOD: integer);
begin
    while A <> B do
        if A > B then A := A - B else B := B - A;
    NOD := A;
end;

begin
    var a: Array of integer := (16, 32, 40, 64, 80, 128);
    var n := a[low(a)];
    for var i := low(a) to high(a) do
        pNOD(n, a[i], n);
   
    Writeln(n);
end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Для кодирования некоторой последовательности, состоящей из букв а б и г д используется неравномерный двоичный код позволяющий однозначно декодировать полученную двоичную последовательность. этот код а-11 б-110 в-101 г-000 д-010 .требуется сократить для одной из букв длину кодового слова так, чтоб код по прежнему можно было декодировать однозначно.код остальных букв меняться не должны.каким из указанных это можно сделать? 1)это невозможно 2)для буквы-10 3)для буквы-01 4)для буквы-10.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Alekseevich1012
kashxb2056
polikarpov-70
ivanandrieiev1984268
marychev55
shumeikoElena362
Pavlov447
vadimnechaev23150
madjk
Наталья Юрьевич1228
dilbaryan76
Kaccak8778
Александровна1973
tatry2005
rudakovam198
▲