11655. Зсув вправо
Степан має рядок \(S\), що складається з малих англійських літер. На цьому рядку він виконає наведену нижче операцію лише один раз.
Спочатку виберіть невід’ємне ціле число \(K\).
Потім перемістіть кожен символ \(S\) вправо на \(K\) (див. нижче).
тут,
a, зміщене вправо на 1, є b;
b, зміщений вправо на 1, є c;
c, зміщений вправо на 1, є d;
\(\cdots\)
y, зміщений вправо на 1, є z;
z, зміщений вправо на 1, є a.
Наприклад, b, зміщений вправо на 4, є f, а y, зміщений вправо на 3, є b.
Вам дається рядок \(T\). Визначте, чи може Степан зробити \(S\) рівним \(T\) за допомогою описаної операції.
Формат вхідних даних
Перший рядок містить рядок \(S\)
Наступний рядок містить рядок \(T\)
Кожен із \(S\) і \(T\) є рядком довжиною від 1 до \(10^5\) (включно), що складаються з малих англійських літер. Довжини \(S\) і \(T\) рівні.
Формат вихідних даних
У вихідний потік вивести \(Yes\) або \(No\) - відповідь на поставлене завдання
Примітка
До прикладу 1:
При K=8,
a зміщується вправо на 8 і стає i,
b зміщується вправо на 8 і стає j,
c зміщується вправо на 8 і стає k,
і тепер \(S\) і \(T\) рівні.
Приклад вхідних даних
abc
ijk
Приклад вихідних даних
Yes
Приклад вхідних даних
z
a
Приклад вихідних даних
Yes
Приклад вхідних даних
ppq
qqp
Приклад вихідних даних
No
Коментарі