Mô tả
Trên dây chuyền lắp ráp xe VinFast tại Hải Phòng, mỗi bộ khung xe đều được in một dải số khung dài chạy dọc theo ống sườn. Một robot thị giác phụ trách việc quét mã QR, đọc về một chuỗi số đại diện cho toàn bộ dải số khung. Để đảm bảo khung xe đúng dòng yêu cầu, robot cần tìm xem một đoạn mã chuẩn cho trước xuất hiện lần đầu tiên ở vị trí nào trong dải số khung đó.
Nhiệm vụ của bạn là cho trước hai chuỗi số: chuỗi mẹ đại diện cho dải số khung đầy đủ và chuỗi con đại diện cho đoạn mã chuẩn cần khớp. Hãy trả về vị trí (chỉ số bắt đầu từ 0) của lần xuất hiện đầu tiên của chuỗi con trong chuỗi mẹ. Nếu chuỗi con không xuất hiện, trả về -1.
Đầu vào
Bài toán gồm hai tham số:
frameCode(chuỗi): dải số khung đầy đủ, độ dài từ 1 đến 1000 ký tự, mỗi ký tự là một chữ số từ '0' đến '9'.pattern(chuỗi): đoạn mã chuẩn cần tìm, độ dài từ 1 đến 1000 ký tự, mỗi ký tự là một chữ số từ '0' đến '9'.
Đầu ra
Trả về một số nguyên là vị trí (chỉ số bắt đầu từ 0) của lần xuất hiện đầu tiên của pattern trong frameCode. Nếu không tìm thấy, trả về -1.
Ràng buộc
- 1 ≤ độ dài
frameCode≤ 1000 - 1 ≤ độ dài
pattern≤ 1000 - Độ dài
patternkhông vượt quá độ dàiframeCodetrong mọi test case. - Mọi ký tự trong cả hai chuỗi đều là chữ số từ '0' đến '9'.
Ví dụ
Ví dụ 1:
- Đầu vào:
frameCode = "312456789",pattern = "456" - Đầu ra:
3 - Giải thích: Dải số khung đầy đủ là "312456789". Đoạn mã "456" xuất hiện bắt đầu từ vị trí thứ 3 (đếm từ 0). Các ký tự tại các vị trí 3, 4, 5 lần lượt là '4', '5', '6' — khớp đúng với mã chuẩn.
Ví dụ 2: