25.10. Cho trước xâu kí tự S và xâu substr. Dùng các lệnh nào để biết được vị trí xuất hiện cuối...

Câu hỏi:

25.10. Cho trước xâu kí tự S và xâu substr. Dùng các lệnh nào để biết được vị trí xuất hiện cuối cùng của xâu substr trong xâu S? Ví dụ nếu S = "123321243212", Substr = "12" thì vị trí xuất hiện lần cuối của "12" trong xâu S sẽ là 10. Nếu không thấy sẽ trả về -1.

Câu trả lời:
Người trả lời: GV. Đỗ Văn Ánh
Để tìm vị trí xuất hiện cuối cùng của xâu substr trong xâu S, chúng ta có thể sử dụng một số phương pháp sau:

Cách 1: Sử dụng vòng lặp để duyệt qua từng vị trí của xâu S, sau đó sử dụng phương thức find() để tìm vị trí xuất hiện của xâu substr. Lưu ý rằng ta cần duyệt từ phần tử thứ (n - m) đến phần tử thứ n - 1, với n là độ dài của xâu S và m là độ dài của xâu substr. Nếu tìm thấy, ta lưu lại vị trí đó và sau khi kết thúc vòng lặp, in ra vị trí cuối cùng tìm được.

Cách 2: Sử dụng phương thức rfind() để tìm vị trí xuất hiện cuối cùng của xâu substr trong xâu S.

Dưới đây là mã chương trình Python thực hiện công việc trên:

```python
S = "123321243212"
substr = "12"
n = len(S)
m = len(substr)
k = -1

for i in range(n - m):
if S.find(substr, i) >= 0:
k = S.find(substr, i)

print(k)
```

Kết quả in ra sẽ là:
```
10
```
Bình luận (0)
Nhấn vào đây để đánh giá
Thông tin người gửi
0.07581 sec| 2199.242 kb