Бонусное задание 3. Поломай палиндром (до 4 баллов)
2. Поломай палиндром!
Дана строка-палиндром palindrome
, состоящая из маленьких букв русского алфавита. Напишите программу, которая заменяет в этой строке ровно одну букву, так что полученная в результате строка уже не является палиндромом, при этом новая строка является лексикографически самой маленькой их всех возможных.
В качестве ответа программа должна выдавать исправленную строку. Если нет такого способа заменить символ, чтобы строка перестала быть палиндромом, программа должна выдавать строку, состоящую из трех восклицательных знаков, '!!!'
.
Примечание. Строка s1
лексикографически меньше, чем строка s2
той же длины, если в той позиции, где s1
и s2
впервые различаются, символ строки s1
меньше (то есть встречается в алфавите раньше), чем соответствующий символ в строке s2
. Например, "вагон"
лексикографически меньше, чем "вальс"
, потому что эти слова отличаются в первый раз в третьем символе, а 'г'
встречается в русском алфавите раньше, чем 'л'
. Если все буквы первого слова два слова полностью совпадают с буквами второго, но второе длиннее, то первое считается меньшим. Например, 'кот'
меньше, чем 'котёнок'
.
Пример. palindrome = 'кок'
.
Правильный ответ: 'аок'
.
Пояснение: Испортить палиндром можно разными способами, например, 'кот'
или 'ток'
. Но 'аок'
- лексикографически самая маленькая строка
За представленное вовремя решение этой задачи можно получить до четырех бонусных баллов