Hôm nay, Jessie được cô dạy về tiền tố chung của hai xâu. Tiền tố chung độ dài ~l~ của hai xâu ~A~ và ~B~ được định nghĩa là một xâu ~C~ độ dài ~l~ sao cho ~C = A_{1 \dots l} = B_{1 \dots l}~. Do đây là một kiến thức mới và cần nhiều sự luyện tập để thành thạo, Jessie cần bạn giúp trả lời ~q~ câu hỏi với ~n~ xâu được Jessie lựa chọn.
Cho ~n~ xâu ~s_1, s_2, \ldots, s_n~ có tổng độ dài không vượt quá ~3\cdot 10^6~. Có ~q~ truy vấn, truy vấn thứ ~i~ cho biết một tập ~k_i~ các xâu trong ~n~ xâu đã cho. Với mỗi truy vấn, bạn hãy cho biết tiền tố chung dài nhất của tất cả xâu trong tập có độ dài là bao nhiêu.
Input
Dòng đầu tiên chứa hai số nguyên ~n~ và ~q~ (~1 \leq n \leq 2 \cdot 10^5, q \leq 10^6~) — lần lượt là số lượng xâu và số lượng truy vấn được Jessie chuẩn bị.
~n~ dòng tiếp theo, mỗi dòng ghi một xâu kí tự khác rỗng, chỉ chứa các
chữ cái in thường trong bảng chữ cái Tiếng Anh (a...z
) cho biết các xâu
được sử dụng.
~q~ dòng tiếp theo, mỗi dòng có dạng: bắt đầu bằng một số nguyên ~k~ (~2 \leq k \leq n~), theo sau là ~k~ số nguyên ~i_1, i_2, \dots, i_k~ — thể hiện số lượng xâu và chỉ số các xâu trong tập cần tìm tiền tố chung dài nhất.
Dữ liệu vào đảm bảo tổng của các giá trị ~k~ trong ~q~ truy vấn và tổng độ dài ~n~ xâu không vượt quá ~3 \cdot 10^6~.
Output
In ra ~q~ dòng tương ứng với ~q~ truy vấn, dòng thứ ~i~ cho biết tiền tố chung dài nhất của tập xâu trong truy vấn thứ ~i~.
Scoring
- Subtask #1 (~20\%~): các xâu có độ dài ~\leq 500~, ~n \leq 500~, ~\sum k \leq 500~;
- Subtask #2 (~20\%~): các xâu có độ dài ~\leq 500~, ~n \leq 500~, ~\sum k \leq 3 \cdot 10^6~;
- Subtask #3 (~20\%~): ~n \leq 2 \cdot 10^5~, mỗi xâu có dạng
aa...ab...bb
, ~\sum k \leq 3 \cdot 10^6~; - Subtask #4 (~20\%~): ~n, q \leq 2 \cdot 10^5~, ~\sum k \leq 3 \cdot 10^6~;
- Subtask #5 (~20\%~): không có ràng buộc gì thêm.
Sample Input 1
5 2
abc
ab
abccc
abcd
abbbb
5 1 2 3 4 5
3 1 4 3
Sample Output 1
2
3
Comments