Можно решать от обратного. 50 = 25×2 25 - нечетное, так что оно не может получиться умножением на 2. 25 = 22+3 22 = 11×2 11 - нечетное, 11 = 8+3 8 = 4×2
А теперь строим команды от конца к началу 1. умножь на 2 (получим 8) 2. прибавь 3 (получим 11) 3. умножь на 2 (получим 22) 4. прибавь 3 (получим 25) 5. умножь на 2 (получим 50)