24.12. Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình tính in ra xâu kí tự là phần chung...
Câu hỏi:
24.12. Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình tính in ra xâu kí tự là phần chung đầu tiên cực đại của hai xâu s1, s2. Ví dụ nếu s1 = "abcdeghik", S2 = "abcmnopq" thì xâu cần tính là "abc”.
Câu trả lời:
Người trả lời: GV. Đỗ Hồng Ánh
Để giải bài toán trên, ta có thể viết chương trình như sau:```def common_prefix(s1, s2): m = min(len(s1), len(s2)) i = 0 s = "" while i < m and s1[i] == s2[i]: s = s + s1[i] i = i + 1 return ss1 = "abcdeghik"s2 = "abcmnopq"result = common_prefix(s1, s2)print(result)```Kết quả sẽ là "abc".Trong chương trình trên, hàm `common_prefix(s1, s2)` sẽ nhận hai xâu kí tự `s1` và `s2`, sau đó tìm phần chung đầu tiên cực đại của hai xâu đó. Để làm điều này, chúng ta lặp qua các ký tự của hai xâu cho đến khi gặp ký tự khác nhau hoặc hết xâu. Sau đó, trả về phần chung đầu tiên cực đại. Trên đoạn mã mẫu, chúng ta sử dụng xâu `s1 = "abcdeghik"` và `s2 = "abcmnopq"`, và kết quả được in ra là "abc".
Câu hỏi liên quan:
- 24.1. Giả sử s = "Thời khoá biểu" thì len(s) bằng bao nhiêu?A. 3. ...
- 24.2. Các biểu thức lôgic sau trả về giá trị gì?a) "01" in "10101" ...
- 24.3. Hai biểu thức sau có tương đương không?a) ch in "0123456789" b) "0” <= ch <= "9"
- 24.4. Hai biểu thức sau có tương đương không?a) "0" <= ch <= "9" ...
- 24.5. Cho trước xâu kí tự S, có cách nào để nhận được xâu bao gồm các kí tự lấy từ S nhưng với thứ...
- 24.6. Nếu S = "1234567890" thì S[0:4] là gì?A. "123" ...
- 24.7. Kết quả đoạn chương trình sau là gì?S = "0123456789"T = "".for i in range(0, len(S),2):...
- 24.8. Cho trước xâu kí tự S bất kì. Viết đoạn chương trình có chức năng sau:a) Đếm số các kí tự là...
- 24.9. Mệnh đề nào dưới đây đúng?A. Xâu kí tự trong Python là xâu chỉ gồm các kí tự nằm trong bảng...
- 24.10. Muốn biết biến s thuộc kiểu xâu kí tự hay không thì cần kiểm tra bằng lệnh gì?
- 24.11. Cho trước hai xâu kí tự s1, s2. Viết đoạn chương trình in ra xâu kí tự bao gồm lần lượt các...
Bình luận (0)