По каналу связи передаются сообщения, содержащие только восемь букв: Г, Д, Е, С, О, Т, К, А; для передачи используется двоичный код, удовлетворяющий условию Фано. Буквы С, Е, К, Т, А имеют коды 111, 110, 10, 0010, 0011 соответственно. Укажите наименьшую возможную длину закодированной последовательности для слова КОКОСЕГ.
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('Количество строк (столбцов) в массиве:');
Writeln('*** Исходный массив [',n,',',n,'] ***');
var a:=MatrRandom(n,n,-10,10);
a.Println(4); Writeln(5*a.ColCount*'-');
var k,l:integer;
Write('Введите L,K: '); Read(l,k);
var lim:=a[l-1,k-1];
var s:=a.Rows.SelectMany(x->x).Where(x->x<lim).Sum;
Writeln('Искомая сумма равна ',s)
end.
Пример
Количество строк (столбцов) в массиве: 6
*** Исходный массив [6,6] ***
-4 -8 -7 -3 -6 -4
2 -9 1 9 -6 6
-9 -2 -8 -3 -1 -4
-1 -9 -3 -7 3 -3
5 9 -6 8 -1 -10
-1 -1 -5 -8 -9 4
Введите L,K: 2 3
Искомая сумма равна -138
Вот пример программы на паскале ABC:
var a:array [1..1000000] of integer;
b:array [1..10] of longint;
c:integer;
i,max,n:longint;
begin
write('Введите число элементов массива: ');
readln(n);
max:=0;
for i:=1 to 10 do
b[i]:=0;
for i:=1 to n do begin
a[i]:=random(10)+1;
write(a[i],' ');
b[a[i]]:=b[a[i]]+1
end;
for i:=1 to 10 do if b[i]>max then
begin
c:=i;
max:=b[i]
end;
writeln;
writeln('Чаще всего в массиве встречается число ',c)
end.