Программа 11211 означает: прибавь 5, прибавь 5, раздели на b, прибавь 5, раздели на b.
40 + 5 = 45
45 + 5 = 50
50 / b = x
x + 5 = y
y / b = 20
Если b=2: 50/2=25, 25+5=30, 30/2=15. Не подходит.
Если b=5: 50/5=10, 10+5=15, 15/5=3. Не подходит.
Если b=10: 50/10=5, 5+5=10, 10/10=1. Не подходит.
Если b=20: 50/20=2.5. Не подходит.
Проверим другую последовательность команд: 11211. 40 + 5 = 45. 45 + 5 = 50. 50 / b = x. x + 5 = y. y / b = 20.
Если b=2: 50/2=25, 25+5=30, 30/2=15. Не подходит.
Если b=5: 50/5=10, 10+5=15, 15/5=3. Не подходит.
Если b=10: 50/10=5, 5+5=10, 10/10=1. Не подходит.
Если b=20: 50/20=2.5. Не подходит.
Проверим другую последовательность команд: 12112. 40 + 5 = 45. 45 / b = x. x + 5 = y. y + 5 = z. z / b = 20.
Если b=2: 45/2=22.5. Не подходит.
Если b=3: 45/3=15, 15+5=20, 20+5=25, 25/3=8.33. Не подходит.
Если b=5: 45/5=9, 9+5=14, 14+5=19, 19/5=3.8. Не подходит.
Проверим другую последовательность команд: 12121. 40 + 5 = 45. 45 / b = x. x + 5 = y. y / b = z. z + 5 = 20.
z = 15. y / b = 15. x + 5 = y. 45 / b = x.
45/b + 5 = y. y/b = 15.
(45/b + 5) / b = 15.
45/b^2 + 5/b = 15.
45 + 5b = 15b^2.
15b^2 - 5b - 45 = 0.
3b^2 - b - 9 = 0.
b = (1 ± sqrt(1 - 4*3*(-9))) / 6 = (1 ± sqrt(1 + 108)) / 6 = (1 ± sqrt(109)) / 6. Не целое.
Проверим другую последовательность команд: 21121. 40 / b = x. x + 5 = y. y + 5 = z. z / b = w. w + 5 = 20.
w = 15. z / b = 15. y + 5 = z. x + 5 = y. 40 / b = x.
40/b + 5 = y. y + 5 = z. z / b = 15.
(40/b + 10) / b = 15.
40/b^2 + 10/b = 15.
40 + 10b = 15b^2.
15b^2 - 10b - 40 = 0.
3b^2 - 2b - 8 = 0.
b = (2 ± sqrt(4 - 4*3*(-8))) / 6 = (2 ± sqrt(4 + 96)) / 6 = (2 ± sqrt(100)) / 6 = (2 ± 10) / 6.
b = 12/6 = 2 или b = -8/6. Так как b натуральное и b>=2, то b=2.
Проверим b=2 с программой 11211: 40 + 5 = 45. 45 + 5 = 50. 50 / 2 = 25. 25 + 5 = 30. 30 / 2 = 15. Не 20.
Проверим b=2 с программой 21121: 40 / 2 = 20. 20 + 5 = 25. 25 + 5 = 30. 30 / 2 = 15. 15 + 5 = 20. Подходит.