Ответ: acdeb
Решение:
Исходная строка порождает три комбинации:
100 011 01 10 110
100 01 10 110 110
и
10 00110110110.
Третья исключена, потому что ни один символ не начинается с двух нулей.
Во второй два последних символа одинаковы.
Следовательно, первая комбинация верна.
Все удачные наборы команд должны включать остановку на отметке 10 футов.
На отметку 1 фут робот может попасть с помощью одной команды A;
на отметку 2 фута - с помощью команд AA и B (всего 2 набора команд);
на отметку 3 фута - с помощью команд AAA, AB, BA и C (4 набора).
Так как за одну команду робот может переместиться на 1, 2 или 3 фута, то для подсчета количества наборов команд, позволяющих роботу попасть на отметки N > 3, можно использовать формулу
K(N) = K(N-1)+K(N-2)+K(N-3).
K(4) = K(3)+K(2)+K(1) = 4+2+1 = 7
K(5) = K(4)+K(3)+K(2) = 7+4+2 = 13
K(6) = K(5)+K(4)+K(3) = 13+7+4 = 24
K(7) = K(6)+K(5)+K(4) = 24+13+7 = 44
K(8) = K(7)+K(6)+K(5) = 44+24+13 = 81
K(9) = K(8)+K(7)+K(6) = 81+44+24 = 149
K(10) = K(9)+K(8)+K(7) = 149+81+44 = 274
Так как вторая часть пути робота также имеет длину 10, то общее количество удачных наборов команд = 274*274 = 75076
716 - 512 = 204 1
204- 128=76 1
76 - 64 =12 1 от 12 нельзя отнять следующую степень двойки - 32, поэтому в нашем двоичном числе на месте этого разряда будет 0, и 16 от 12 отнять нельзя, значит снова 0.
12- 8 =4 1,
4 - 4 = 0 1 , а дальше все оставшиеся разряды нули. В разряде двоек - 0, в разряде единиц тоже 0. Итого. 111001100 наше двоичное число.