Codeforces Round 712 (Div. 2) |
---|
Закончено |
Палиндром — это строка, которая читается одинаково в обоих направлениях. Например, строки «z», «aa», «aba» и «abccba» — палиндромы, а «codeforces» и «ab» — нет. Вы ненавидите палиндромы, потому что они вызывают у вас дежавю.
Дана строка $$$s$$$. Вы должны вставить ровно один символ 'a' в $$$s$$$. Если таким образом можно получить строку, которая не является палиндромом, вам нужно найти одну из них. В противном случае следует сообщить, что это невозможно.
Например, предположим, что $$$s=$$$ «cbabc». Вставив 'a', можно получить «acbabc», «cababc», «cbaabc», «cbabac», или «cbabca». Строка «cbaabc» — палиндром, и не подходит, поэтому вы должны вывести другую из вышеперечисленных строк.
В первой строке содержится одно целое число $$$t$$$ ($$$1\le t\le 10^4$$$) — количество наборов входных данных.
Единственная строка каждого набора входных данных содержит строку $$$s$$$, состоящую из строчных английских букв.
Суммарная длина всех строк не превышает $$$3\cdot 10^5$$$.
Для каждого набора входных данных, если нет решения, выведите «NO».
В противном случае выведите «YES», а в следующей строке выведите строку длиной $$$|s|+1$$$. Если есть несколько решений, можно вывести любое из них.
Вы можете выводить каждый символ «YES» и «NO» в любом регистре.
6 cbabc ab zza ba a nutforajaroftuna
YES cbabac YES aab YES zaza YES baa NO YES nutforajarofatuna
Первый набор входных данных описан в условии.
Во втором наборе входных данных можно получить либо «aab», либо «aba». Но «aba» — это палиндром, поэтому «aab» — единственный правильный ответ.
В третьем наборе входных данных «zaza» и «zzaa» — правильные ответы, а «azza» — нет.
В четвертом наборе входных данных «baa» — единственный правильный ответ.
В пятом наборе входных данных мы можем получить только «aa», что является палиндромом. Следовательно, ответ «NO».
В шестом наборе входных данных «anutforajaroftuna» — палиндром, но вставка 'a' в любом другом месте подходит.
Название |
---|