Giả sử chúng ta có hai chuỗi s và t và r, chúng ta phải kiểm tra xem r =s | t hoặc r =t + s trong đó | biểu thị sự nối.
Vì vậy, nếu đầu vào là s ="world" t ="hello" r ="helloworld", thì đầu ra sẽ là True là "helloworld" (r) ="hello" (t) | "thế giới".
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
- nếu kích thước của r không bằng tổng độ dài của s và t, thì
- trả về Sai
- nếu r bắt đầu bằng s thì
- nếu r kết thúc bằng t, thì
- trả về True
- nếu r kết thúc bằng t, thì
- nếu r bắt đầu bằng t, thì
- nếu r kết thúc bằng s thì
- trả về True
- nếu r kết thúc bằng s thì
- trả về Sai
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
Mã mẫu
def solve(s, t, r): if len(r) != len(s) + len(t): return False if r.startswith(s): if r.endswith(t): return True if r.startswith(t): if r.endswith(s): return True return False s = "world" t = "hello" r = "helloworld" print(solve(s, t, r))
Đầu vào
"world", "hello", "helloworld"
Đầu ra
True