Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Xóa ký tự trùng lặp liên tiếp trong Python

Cho chuỗi s chỉ chứa 'R' và 'L'. Xóa tối thiểu ký tự để không có 'R' hoặc 'L' nào liên tiếp.

Ví dụ: "LLLRLRR" → "LRLR".

Các bước giải quyết

  • seen = s[0], ans = s[0]
  • Duyệt ký tự i từ chỉ số 1 đến cuối:
    • Nếu i != seen: ans += i, seen = i
  • Trả về ans

Ví dụ mã Python

class Solution:
    def solve(self, s):
        seen = s[0]
        ans = s[0]
        for i in s[1:]:
            if i != seen:
                ans += i
                seen = i
        return ans

ob = Solution()
print(ob.solve("LLLRLRR"))

Đầu vào

"LLLRLRR"

Đầu ra

LRLR