Вакцина від реп'яховіруса
Обмеження: 2 сек., 256 МіБ
Для виготовлення вакцини від реп’яховірусу імунологам залишилося лише навчитися правильним чином трансформувати генетичну послідовність реп’яховіруса. Генетична послідовність реп’яховіруса — рядок s із n малих латинських літер. Для успішного створення вакцини, його необхідно перетворити в рядок t, котрий також складається з n малих латинських літер. За одну операцію дозволено переставити один символ поточної генетичної послідовності в її кінець.
Ваше завдання — навчитися трансформувати початкову генетичну послідовність s у необхідну послідовність t. Трансформування повинно бути достатньо ефективним, тому дозволено використовувати не більше ніж n операцій.
Вхідні дані
У першому рядку задано рядок s.
У другому рядку задано рядок t.
Вихідні дані
У першому рядку виведіть одне натуральне число k (1≤k≤n) — кількість операцій.
У наступному рядку виведіть k натуральних чисел xi (1≤xi≤n) — операції в такому порядку як їх необхідно виконувати.
Послідовність операцій яка трансформує рядок s в рядок t за не більше ніж n операцій гарантовано існує. Якщо існує більше однієї такої послідовності операцій, дозволено вивести будь-яку. Зверніть увагу, що немає потреби мінімізовувати кількість операцій в послідовності. Достатньо, щоб ця кількість була не більшою за n.
Обмеження
s≠t,
рядок s містить таку ж мультимножину символів, що й t,
5 тестів: 2≤n≤7,
15 тестів: 2≤n≤1000,
25 тестів: 2≤n≤105.
Приклади
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
abxy axby | 2 2 3 |
Вхідні дані (stdin) | Вихідні дані (stdout) |
---|---|
abaacd abcdaa | 6 3 2 3 3 3 1 |
Примітки
У першому тесті початкова генетична послідовність має наступний
вигляд: abxy
. Першою операцією переставляємо другий символ
в кінець і послідовність стає axyb
. Другою операцією
переставляємо третій символ в кінець і послідовність cтає
axby
, що і є необхідною послідовністю.