ответ: 8831
Код на языке программирования Python
otv = []
for t in range(1, 100001):
x = t
a = 0; b = 0
while x > 0:
if x % 2 == 0:
a += 1
else:
b += x % 10
x = x // 10
if a == 2 and b == 4:
otv.append(t)
print(max(otv))
Объяснение:
Список otv будет содержать все значения t, подходящие по условию.
Переменная x меняется в процессе работы кода, а нам для ответа нужно изначальное значение x, поэтому изначальное значение сохраняем в переменной t.
В конце цикла for производим проверку, если a == 2 и b == 4, то добавляем к списку otv переменную t (т.к. по условию сначала выводится переменная a, потом b).
В конце кода выводим максимальное значение списка otv.
1234₁₀=1·10³+2·10²+3·10¹+4·10⁰
10011₂=1·2⁴+0·2³+0·2²+1·2¹+1·2⁰
1000-11=101
1011+1011=10110
101·101=11001