Задана строка $$$s$$$, состоящая из $$$n$$$ строчных букв латинского алфавита.
Вам необходимо удалить из строки не более одного (то есть ноль или один) символа таким образом, что строка, которую вы получите, будет являться лексикографически минимальной среди всех строк, которые можно получить при помощи этой операции.
Строка $$$s = s_1 s_2 \dots s_n$$$ лексикографически меньше строки $$$t = t_1 t_2 \dots t_m$$$, если $$$n < m$$$ и $$$s_1 = t_1, s_2 = t_2, \dots, s_n = t_n$$$ или найдется такое число $$$p$$$, что $$$p \le min(n, m)$$$ и $$$s_1 = t_1, s_2 = t_2, \dots, s_{p-1} = t_{p-1}$$$ и $$$s_p < t_p$$$.
Например, «aaa» меньше, чем «aaaa», «abb» меньше, чем «abc», «pqr» меньше, чем «z».
Первая строка входных данных содержит одно целое число $$$n$$$ ($$$2 \le n \le 2 \cdot 10^5$$$) — длину строки $$$s$$$.
Вторая строка входных данных содержит ровно $$$n$$$ строчных букв латинского алфавита — строку $$$s$$$.
Выведите одну строку — минимально возможную лексикографически строку, которая может быть получена при помощи удаления не более одного символа из строки $$$s$$$.
3 aaa
aa
5 abcda
abca
В первом тестовом примере вы можете удалить любой символ строки $$$s$$$, чтобы получить строку «aa».
Во втором тестовом примере «abca» < «abcd» < «abcda» < «abda» < «acda» < «bcda».
Название |
---|