leetcode 1544 整理字串

2022-06-24 04:21:10 字數 951 閱讀 9400

給你乙個由大小寫英文本母組成的字串 s 。

乙個整理好的字串中,兩個相鄰字元 s[i] 和 s[i+1],其中 0<= i <= s.length-2 ,要滿足如下條件:

若 s[i] 是小寫字元,則 s[i+1] 不可以是相同的大寫字元。

若 s[i] 是大寫字元,則 s[i+1] 不可以是相同的小寫字元。

請你將字串整理好,每次你都可以從字串中選出滿足上述條件的 兩個相鄰 字元並刪除,直到字串整理好為止。

請返回整理好的 字串 。題目保證在給出的約束條件下,測試樣例對應的答案是唯一的。

示例 1:

輸入:s = "leeeetcode"

輸出:"leetcode"

解釋:無論你第一次選的是 i = 1 還是 i = 2,都會使 "leeeetcode" 縮減為 "leetcode" 。

示例 2:

輸入:s = "abbacc"

輸出:""

解釋:存在多種不同情況,但所有的情況都會導致相同的結果。例如:

"abbacc" --> "aacc" --> "cc" --> ""

"abbacc" --> "abba" --> "aa" --> ""

示例 3:

輸入:s = "s"

輸出:"s"

1 <= s.length <= 100

s 只包含小寫和大寫英文本母

class solution:

def makegood(self, s: str) -> str:

ls=if len(s)==1:return s

for x in s:

if ls and abs(ord(ls[-1])-ord(x))==32:

ls.pop()

else:

return ''.join(ls)

字串 簡單 1544 整理字串

題目 給你乙個由大小寫英文本母組成的字串 s 乙個整理好的字串中,兩個相鄰字元 s i 和 s i 1 其中 0 i s.length 2 要滿足如下條件 若 s i 是小寫字元,則 s i 1 不可以是相同的大寫字元。若 s i 是大寫字元,則 s i 1 不可以是相同的小寫字元。請你將字串整理好...

力扣簡單專欄 1544 整理字串

給你乙個由大小寫英文本母組成的字串 s 乙個整理好的字串中,兩個相鄰字元 s i 和 s i 1 其中 0 i s.length 2 要滿足如下條件 若 s i 是小寫字元,則 s i 1 不可以是相同的大寫字元。若 s i 是大寫字元,則 s i 1 不可以是相同的小寫字元。請你將字串整理好,每次...

Leetcode文章整理

leetcode的題目種模擬較多,感覺應該將自己聯絡過的題目進行分類,這個就是根據自己做過的題目進行劃分,並做一定的總結,會持續更新 sort two pointer 單鏈表 這裡用的很直接的方法就是找到鍊錶的中點,然後將鍊錶分為兩部分,後半截翻轉後兩個鍊錶進行融合。我在想,如果能之間把後面半截放入...