Исполнитель май6 преобразует число, записанное на экране. у исполнителя три команды, которым присвоены номера: 1. прибавь 1 2. прибавь 2 3. прибавь 6 первая из них увеличивает число на экране на 1, вторая увеличивает это число на 2, а третья – на 4. программа для исполнителя май6 – это последовательность команд. сколько есть программ, которые число 21 преобразуют в число 30?
285
302
Ответы на вопрос:
Сначала найдем способы получить из 21 30, групируя комманды от большей к меньшей 21 + 2*4 + 0*2 + 1*1 = 30 - перестановок команд = (2+0+1)! /2! /0! /1! = 3 21 + 1*4 + 2*2 + 1*1 = 30 - перестановок команд = (1+2+1)! /1! /2! /1! = 12 21 + 1*4 + 1*2 + 3*1 = 30 - перестановок команд = (1+1+3)! /1! /1! /3! = 20 21 + 1*4 + 0*2 + 5*1 = 30 - перестановок команд = (1+0+5)! /1! /0! /5! = 6 21 + 0*4 + 4*2 + 1*1 = 30 - перестановок команд = (0+4+1)! /0! /4! /1! = 5 21 + 0*4 + 3*2 + 3*1 = 30 - перестановок команд = (0+3+3)! /0! /3! /3! = 20 21 + 0*4 + 2*2 + 5*1 = 30 - перестановок команд = (0+2+5)! /0! /2! /5! = 21 21 + 0*4 + 1*2 + 7*1 = 30 - перестановок команд = (0+1+7)! /0! /1! /7! = 8 21 + 0*4 + 0*2 + 9*1 = 30 - перестановок команд = (0+0+9)! /0! /0! /9! = 1 всего 3+12+20+6+5+20+21+8+1 = 96
Общее количество символов для записи номеров = 22+22+10=54 для кодирования одного символа необходимо log(2)54 ≈ 6 бит (2^6 = 64). для записи одного номера требуется 7*6 бит = 42 бита = 42/8 байт ≈ 6 байтдля хранения 50 номеров потребуется 50*6 байт = 300 байт
Популярно: Информатика
-
ксю123908.03.2022 00:26
-
Ponny105.03.2020 21:35
-
Рикания06.06.2023 21:52
-
angelina340401.09.2021 18:13
-
нура4922.03.2023 01:02
-
CNikolas200102.08.2021 15:58
-
sashocpinchuk01.06.2023 23:37
-
alenazayka20014.11.2020 19:41
-
afsanka9808.01.2023 06:20
-
9573st27.09.2020 00:36