Задачи
Преобразование ДНК
Преобразование ДНК
Биологи лаборатории \textit{Advanced Celluar Mechanics Lab. (ACM Lab.)} занимаются исследованиями в области геномов и ДНК. Недавно в этой лаборатории была разработана технология, позволяющая достаточно дёшево производить с цепочкой ДНК некоторые преобразования.
Представим себе цепочку ДНК как строку длины \textbf{n} из символов из множества \{\textbf{A}, \textbf{G}, \textbf{C}, \textbf{T}\}. Элементарное преобразование, которое умеют производить биологи лаборатории, представляет собой разворот подстроки с \textbf{l}-го по \textbf{r}-й символ (целые числа \textbf{l} и \textbf{r} выбираются так, что \textbf{1} ≤ \textbf{l} ≤ \textbf{r} ≤ \textbf{n}). Таким образом, из строки \textbf{a_1a_2...a_la_\{l+1\}...a_\{r−1\}a_r...a_n} получается строка \textbf{a_1a_2...a_ra_\{r−1\}...a_\{l+1\}a_l...a_n}.
Теперь биологи разрабатывают программно-аппаратный комплекс для выполнения преобразований ДНК. Одной из его функций будет преобразование исходной цепочки ДНК в требуемую.
Ваша задача - написать программу, которая по исъодной и требуемой цепочкам ДНК будет находить необходимую для этого цепочку элементарных преобразований.
\InputFile
Первая строка входного файла содержит описание исходной цепочки ДНК, вторая строка - описание требуемой цепочки ДНК. Длины обеих цепочек совпадают и не превышают \textbf{5000}. Каждая из цепочек содержит только символы из множества \{\textbf{A}, \textbf{G}, \textbf{C}, \textbf{T}\}.
Гарантируется, что искомая последовательность преобразований существует.
\OutputFile
В первой строке выходного файла выведите количество \textbf{k} преобразований в построенном решении. Число\textbf{k} должно быть неотрицательным и не должно превышать \textbf{4999}.
Далее выведите \textbf{k} строк, описывающих построенную последовательность элементарных преобразований. Каждая из строк должна содержать два числа: \textbf{l_i} и \textbf{r_i} - соответственно левый и правый конец разворачиваемого на \textbf{i}-м шаге отрезка.
Входные данные #1
AGCT GCAT
Выходные данные #1
3 1 2 2 3 3 3