สมมติว่าเรามีสตริง s สตริงนี้ประกอบด้วย "R" และ "L" เราต้องลบจำนวนอักขระขั้นต่ำเพื่อให้ไม่มี "R" ที่ต่อเนื่องกัน และไม่มี "L" ที่ต่อเนื่องกัน
ดังนั้น หากอินพุตเป็นเหมือน "LLLRLRR" เอาต์พุตจะเป็น "LRLR"
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- เห็น :=อักขระตัวแรกของ s
- ans :=อักขระตัวแรกของ s
- สำหรับแต่ละอักขระ i จากดัชนี 1 ถึงจุดสิ้นสุดของ s ทำ
- ถ้าฉันไม่เหมือนที่เห็นแล้ว
- ans :=ans + ฉัน
- เห็นแล้ว :=ฉัน
- ถ้าฉันไม่เหมือนที่เห็นแล้ว
- คืนสินค้า
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
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")) อินพุต
"LLLRLRR"
ผลลัพธ์
LRLR