10 / 2.5 = 4
15 / 2.5 = 6
4 * 6 = 24
24 * 250 = 6000
Ответ: 6000
При использовании 8 символов для хранения одного символа требуется log(2)8 = 3 бита. Объем сообщения = 20*8 = 160 бит = 20 байт
<h3>PascalABC.NET 3.4.2, сборка 1843 от 24.10.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var n := ReadInteger('N=');
SeqGen(N, 11, t -> t + 11).Aggregate(BigInteger(1), (i, j)-> i * j).Println
end.
<h3>N= 21</h3><h3>378085741958289664546285217171284131840000</h3>
Тут все достаточно просто.
Вычитать 4 из 2 смысла нет: получим -2 и что с ним дальше делать?
Возведя -2 в квадрат, получим 4, но зачем 4 получать за две команды, когда можно сразу возвести исходную двойку в квадрат? А дальнейшее вычитание даст -6, квадрат -6 это 36, что никак не напоминает 64.
Поэтому первая команда - это "возведи в квадрат" и мы получим 4.
Из 4 вычитать 4 смыла никакого: получим ноль и дальше что? В квадрат возводить его смысла нет, вычитать еще 4 - будет -4 - и зачем оно нам, когда у нас 4 и так есть? Так что остается опять только "возведи в квадрат". Получаем 16 и это была вторая команда.
Вот 16 в квадрат возводить уж точно смысла нет: зачем нам 256, когда идем к 64? Так что теперь - только "вычти 4". Получим 12.
С 12 такое же рассуждение, 144 - это много. Опять "вычти 4" и получили 8.
Отлично, последняя команда "возведи в квадрат" и мы получили 64!
Ответ: 11221