Một trang web tin tức có thanh tìm kiếm với chức năng gợi ý từ khóa: khi người dùng vừa gõ xong một chuỗi \(x\), hệ thống lập tức liệt kê tất cả các từ khóa trong từ điển bắt đầu bằng \(x\).
Cho từ điển gồm \(n\) từ khóa \(s_1, s_2, \ldots, s_n\), mỗi từ khóa chỉ gồm các chữ cái latin in thường. Có \(q\) truy vấn, mỗi truy vấn là một xâu \(x\) vừa được gõ vào thanh tìm kiếm. Với mỗi truy vấn, hãy cho biết có từ khóa nào được hệ thống gợi ý hay không.
Nhắc lại, xâu \(u\) được gọi là tiền tố của xâu \(v\) nếu \(|u| \le |v|\) và \(u_i = v_i\) với mọi \(1 \le i \le |u|\). Chẳng hạn, ab và abace đều là tiền tố của abace, còn abd không là tiền tố của abace; ngoài ra mỗi xâu cũng là tiền tố của chính nó.
Input
- Dòng đầu tiên chứa hai số nguyên \(n\) và \(q\) (\(1 \le n, q \le 2 \cdot 10^5\)) — lần lượt là số lượng từ khóa và số lượng truy vấn.
- \(n\) dòng tiếp theo, dòng thứ \(i\) chứa từ khóa \(s_i\).
- \(q\) dòng tiếp theo, mỗi dòng chứa một xâu truy vấn \(x\).
Output
- Với mỗi truy vấn, in ra trên một dòng riêng:
YESnếu tồn tại từ khóa nhận \(x\) làm tiền tố, ngược lại in raNO.
Constraints
- Mỗi xâu (từ khóa và xâu truy vấn) có độ dài lớn hơn \(0\) và chỉ gồm các chữ cái latin in thường từ
ađếnz. - Tổng độ dài của tất cả các từ khóa không vượt quá \(2 \cdot 10^5\).
- Tổng độ dài của tất cả các xâu truy vấn không vượt quá \(2 \cdot 10^5\).
Sample Input 1
5 6
abace
abade
cbcb
abccd
abddd
aba
abacd
cb
abace
abacez
xyz
Sample Output 1
YES
NO
YES
YES
NO
NO
Sample Input 2
1 3
a
a
b
aa
Sample Output 2
YES
NO
NO
Explanation
Ở mẫu 1, với các từ khóa abace, abade, cbcb, abccd, abddd:
abalà tiền tố củaabacevàabadenên có từ khóa được gợi ý.abacdkhông là tiền tố của từ khóa nào: gần nhất làabace, chỉ khớp đúng 4 ký tự đầu.cblà tiền tố củacbcb.abacechính là một từ khóa, mà mỗi xâu là tiền tố của chính nó.abacezdài hơnabacenên không thể là tiền tố của xâu nào ngắn hơn nó.xyzkhông có từ khóa nào bắt đầu bằng chữx.
Ở mẫu 2, từ điển chỉ có duy nhất một từ khóa a: truy vấn a được gợi ý, còn b và aa thì không (aa khớp a được ký tự đầu nhưng từ khóa đã hết).
Bình luận
Đăng nhập để bình luận
Chưa có bình luận nào.