Мальчик1=м1 мальчик2=м2
мужык=М
1 шаг
М м1,м2
2 шаг
М,м1 м2
3 шаг
м1 М,м2
4 шаг
м1,м2 М
5 шаг
(пустота) м1,м2,М
5*20=100 минут
Решение:
1 килобайт = 1024 байт
5*1024=5120 байт
Ответ: буква г)
Алгоритм 21211
вычти 1: 27-1=26
раздели на 2: 26/2=13
вычти 1: 13-1=12
раздели на 2: 12/2=6
раздели на 2: 6/2=3
Ответ: 21211
Понятно, что тут нужен цикл для суммирования четырех членов вида
A²ˣ⁺¹ / [(2*х+1)*B²ˣ], х = 1, 2, 3, 4 и тут есть два варианта. Первый - считать, как написано. И на сегодня это правильный вариант, поскольку видна исходная формула. Второй - завести две добавочные переменные, в одну поместить A³, во вторую В². А затем получать следующие степени, домножая каждый раз на А² и В соответственно. Но это растянет программу и скроет исходную формулу от восприятия, что затруднит поиск ошибок. К счастью, современная версия языка Pascal - PascalABC.NET - обзавелась операцией возведения в степень и на ней прграмма будет выглядеть очень просто.
===== PascalABC.NET =====
begin
var (a, b) := ReadReal2('Введите А и В:');
var y := SeqGen(4, x -> A ** (2 * x + 1) /
((2 * x + 1) * B ** (2 * x)), 1).Sum;
y.Println
end.
1) пусть х - искомая система счисления, тогда получаем уравнение
1*x^2+0*x^1+0*x^0 = 25
x^2=25
x=5
2) 12 13 14 20 21 22 23 24 30 31 - вроде 5 раз
3) 31_4 = 3*4+1 = 13
131_4 = 1*4*4+13 = 16+13 = 29
дальше уже будет перебор
4) 22_3 = 2*3+2 = 8
122_3 = 1*3*3 + 8 = 17
222_3 = 2*3*3 + 8 = 18+8 = 26