
var
n, Num, i, j, t: integer;
Count: array[1..12] of integer;
Names: array[1..12] of integer;
begin
for i := 1 to 12 do
begin
Count[i] := 0;
Names[i] := i;
end;
ReadLn(N); { Считываем количество запросов}
for i := 1 to N do
begin
ReadLn(t); {считали очередной запрос}
Count[t] := Count[t] + 1;
end;
{Сортируем массивы Names и Count в порядке убывания значений массива Count}
for i := 12 downto 2 do
for j := 2 to i do
if Count[j - 1] < Count[j] then
begin
t := Count[j];
Count[j] := Count[j - 1];
Count[j - 1] := t;
t := Names[j];
Names[j] := Names[j - 1];
Names[j - 1] := t;
end;
for i := 12 downto 1 do
if Count[i] > 0 then
WriteLn(Names[i], ' ', Count[i]);
end.
Объяснение:
1) 1221
2) АЛЛАММАЛЛАН
3) 21212
Объяснение:
!Задание 1
Из 4 получить 16.
1 действие: 4-2=2
2 действие: 2*3=6
3 действие: 6*3=18
4 действие: 18-2=16
Записываем в виде команд :
1 команда вычесть 2,
2 команда умножить на 3
1221
!Задание 2
Дано АЛ
1 действие: АЛЛАМ
2 действие: АЛЛАММАЛЛАН
( 1 действие приписываем к исходному числу те же буквы, но в обратном порядке и меняем последнюю букву в исходном слове на ту, которая идет следующая в алфавите, во втором действие повторяем предыдущий алгоритм)
!Задание 3
У исполнителя Калькулятор две команды, которым
присвоены номера:
1)Делить на 2;
2)Умножить на 3.
Первая из них делит число на экране на 2, вторая —
увеличивает его в 3 раза. Запишите порядок команд в
программе получения из 4 числа 27, содержащей не более
5 команд, указывая лишь номера команд.