Непростая задача...
const
n = 16;
type
R = record
v: integer;
p: integer
end;
mR = array[1..n] of R;
function SummOfDigits(n: integer): integer;
{ Сумма цифр в трехзначном числе }
begin
SummOfDigits := (n div 100) + ((n mod 100) div 10) + (n mod 10)
end;
procedure Swp(var a, b: R);
{ Меняет местами элементы a и b }
var
t: R;
begin
t.v := a.v; t.p := a.p;
a.v := b.v; a.p := b.p;
b.v := t.v; b.p := t.p
end;
procedure Shell(var a: mR; n: integer);
{ сортировка методом Шелла }
var
i, j, step: integer;
begin
step := n div 2;
while step > 0 do
begin
for j := n - step downto 1 do
begin
i := j;
while i <= n - step do
begin
if a[i].v > a[i + step].v then Swp(a[i], a[i + step]);
i := i + step
end
end;
step := step div 2
end
end;
var
a: array[1..n] of integer;
b: mR;
i: integer;
begin
Randomize;
Writeln('*** Исходные элементы массива ***');
for i := 1 to n do
begin
a[i] := Random(900) + 100;
b[i].v := SummOfDigits(a[i]);
b[i].p := i;
Write(a[i]:4)
end;
Writeln;
Shell(b, n);
Writeln('*** Упорядоченные по возрастанию суммы цифр элементы массива ***');
for i := 1 to n do
begin
Write(a[b[i].p]:4)
end;
Writeln
end.
Тестовое решение:
*** Исходные элементы массива ***
862 244 599 379 595 840 551 151 614 383 185 893 131 172 139 256
*** Упорядоченные по возрастанию суммы цифр элементы массива ***
131 151 244 172 551 614 840 139 256 185 383 862 595 379 893 599
<style>
#Таблица { border-collapse: collapse; }
#Таблица td { width: 30px; height: 30px; border: 1px solid; }
</style>
<table id="Таблица">
<tr><td colspan=8></td></tr>
<tr><td rowspan=6></td><td colspan=6></td><td rowspan=7></td></tr>
<tr><td rowspan=4></td><td colspan=4></td><td rowspan=5></td></tr>
<tr><td rowspan=2></td><td colspan=2></td><td rowspan=3></td></tr>
<tr><td></td><td></td></tr>
<tr><td colspan=3></td></tr>
<tr><td colspan=5></td></tr>
<tr><td colspan=7></td></tr>
</table>
20*32*16 = 10240 (количество символов в статье)
каждый символ кодируется 16-ю битами,
10240 * 16 = 163840 бит.
можно перевести в килобайты.
163840 бит/8 = 20480 байт
20480/1024 = 20 кб.
Ответ: 20 килобайт.
ИСХОДНЫЙ
Яша Арбузов
Катя Арбузова
Коля Белкин
Лена Волкова
Дима Иволгин
Серёжа Тополев
Валя Стрелина
Роберт Щукин
Марина Яблочкова
так как хочет Марина)
Марина Яблочкова
Роберт Щукин
Сережа Тополев
Валя Стрелкина
Дима Иволгин
Лена Волкова
Коля Белкин
Катя Арбузова
<span>Яша Арбузов </span>