Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

โปรแกรมทำให้สตริงสองตัวที่มีความยาวเท่ากันเหมือนกันโดยการสลับตัวอักษรใน Python

สมมติว่ามีสตริง s และ t ความยาว n เราสามารถหยิบตัวอักษรหนึ่งจาก s และหนึ่งจาก t มาสลับกันได้ จำนวนครั้งไม่จำกัด ต้องตรวจสอบว่าสามารถทำให้สตริงทั้งสองเท่ากันได้หรือไม่

เช่น ถ้าอินพุตคือ s = "xy", t = "yx" ผลลัพธ์จะเป็น True

ขั้นตอนการแก้ปัญหา

  • st := เรียงสตริงที่ต่อ s และ t
  • for i ในช่วง 0 ถึง len(st)-1 เพิ่มทีละ 2
    • ถ้า st[i] != st[i+1] คืนค่า False
  • คืนค่า True

ตัวอย่างโค้ด

class Solution:
    def solve(self, s, t):
        st = sorted(s + t)
        for i in range(0, len(st), 2):
            if st[i] != st[i+1]:
                return False
        return True

ob = Solution()
print(ob.solve("xy", "yx"))

อินพุต

"xy", "yx"

เอาต์พุต

True