https://leetcode.com/problems/make-the-string-great/description/ | Easy |
---|
Дана строка s
, содержащая заглавные и строчные буквы английского алфавита. Строка называется «великой», если в ней нет двух соседних символов, образующих пару одной буквы в разных регистрах (например, aA
или Aa
). Нужно многократно удалять такие пары до тех пор, пока строка не станет «великой», и вернуть итоговую строку.
class Solution {
fun makeGood(s: String): String {
val stack = StringBuilder()
for (c in s) {
if (stack.isNotEmpty() && kotlin.math.abs(stack.last() - c) == 'a' - 'A') {
stack.deleteCharAt(stack.length - 1)
} else {
stack.append(c)
}
}
return stack.toString()
}
}