| Турнир Архимеда 2021 |
|---|
| Закончено |
Биоинформатик Федот решил заняться скрещиванием двух организмов. Последовательности ДНК этих организмов — это две строки $$$s_0$$$ и $$$t_0$$$, состоящие из символов 'A', 'C', 'G' и 'T'.
Поскольку Федоту всего лишь 5 лет, он не очень знает, как происходит скрещивание, но абсолютно уверен, что если у него есть последовательности $$$s_i$$$ и $$$t_i$$$, это происходит следующим образом:
Федот хочет произвести скрещивание несколько раз, чтобы в конце получить две последовательности ДНК $$$s_k$$$ и $$$t_k$$$ такие, что $$$s_k$$$ состоит только из аденина ('A'), а $$$t_k$$$ — не содержит аденин вообще. Помогите ему добиться этого за минимальное число скрещиваний.
Ввод состоит из двух строк — $$$s_0$$$ и $$$t_0$$$ — последовательностей ДНК двух исходных организмов ($$$1 \leqslant |s_0|, |t_0| \leqslant 10^6$$$).
В первой строке выведите число $$$k$$$ — минимальное количество шагов скрещивания, которое необходимо для переноса всего аденина в первый организм.
В $$$i$$$-й (нумеруя с нуля) из следующих $$$k$$$ строк выведите через пробел $$$|s_i^p|$$$ и $$$|t_i^p|$$$ — длины выбранных префиксов последовательностей на $$$i$$$-м шагу скрещивания.
ACAT GAA
3 3 1 2 0 1 0
В примере из условия скрещивания происходят следующим образом:
Можно доказать, что за два скрещивания желаемого результата добиться нельзя.
| Название |
|---|


