Decryption
Bạn \(S\) là thành viên của 1 CLB lập trình. Trong một cuộc thi, \(S\) đã đại diện cho CLB của mình đi thi và đạt được giải nhất. Ban tổ chức đã tặng \(S\) một laptop mới để học lập trình, tuy nhiên \(S\) cần giải câu đố của chương trình để có được mật khẩu đăng nhập vào laptop đó và cần các bạn giúp giải quyết.
Ban tổ chức cho \(S\) gợi ý là:
- \(N\) là độ dày dãy số \((N ≤ 10^6)\)
- Dãy \(A\) gồm \(N\) số là dãy gợi ý \((A_i ≤ 10^6)\)
- \(T\) là số truy vấn tạo ra dãy mật khẩu \((T ≤ 5*10^5)\)
- \(T\) cặp \((X, P)\) là cách xử lí mật khẩu \((X, P ≤ 5 * 10^5)\)
Mật khẩu là dãy số khi lấy tích của dãy số \(A\) và kiểm tra xem nó có chia hết cho \(X^P\) không. Nếu chia hết in ra \(1\) ngược lại in ra \(0\).
Yêu cầu: Hãy giúp S tìm mật khẩu đăng nhập.
Input:
- Dòng đầu tiên ghi số \(N\).
- Dòng 2 ghi \(N\) số \(A_i\).
- Dòng 3 ghi số \(T\).
- \(T\) dòng tiếp theo mỗi dòng ghi 1 cặp số \((X, P)\).
Output:
- Gồm 1 dòng duy nhất là mật khẩu cần tìm
Sample
Input
5
1 2 3 4 5
4
5 1
2 3
3 4
15 2
Output
1100
Giải thích:
Trong ví dụ trên, \(A = 1 * 2 * 3 * 4 * 5 = 120\), có tất cả 4 truy vấn:
- Truy vấn 1, \(X = 5, P = 1\) và \(A = 120\) chia hết cho \(5^1 = 5\), in ra 1.
- Truy vấn 2, \(X = 2, P = 3\) và \(A = 120\) chia hết cho \(2^3 = 8\), in ra 1.
- Truy vấn 3, \(X = 3, P = 4\) và \(A = 120\) không chia hết cho \(3^4 = 81\), in ra 0.
- Truy vấn 4, \(X = 15, P = 2\) và \(A = 120\) không chia hết cho \(15^2 = 225\), in ra 0.
\(=>\) \(1100\) là mật khẩu cần tìm.
Gợi ý:
- Mật khẩu là một dãy bit ""đây là phần thừa do tác giả tự bịa ra =))""
Đếm từ bằng nhau
Nguyên đang viết một phần mềm đếm từ trong một xâu ký tự. Cậu cảm thấy buồn chán sau khi viết xong phần mềm rất nhanh. Bây giờ, cậu muốn tìm \(P\) là số lượng lớn nhất các từ có độ dài bằng nhau đứng liên tiếp trong xâu cho trước.
Cho một xâu chỉ chứa các ký tự từ \(a\) đến \(z\) và ký tự trống. Mỗi từ là một chuỗi các ký tự liên tiếp khác ký tự trống và các từ phân tách nhau bởi ít nhất một ký tự trống. Nhiệm vụ của bạn là viết chương trình giúp Nguyên tìm số \(P\) nói trên.
Dữ liệu vào
-
Dữ liệu vào gồm nhiều bộ dữ liệu tương ứng với nhiều test. Dòng đầu tiên chứa một số nguyên dương không lớn hơn \(20\) là số lượng các bộ dữ liệu. Các dòng tiếp theo chứa các bộ dữ liệu.
-
Trên mỗi dòng tiếp theo chứa xâu ký tự có không quá \(1000\) từ tương ứng với mỗi bộ dữ liệu, mỗi từ có không quá \(20\) ký tự.
Dữ liệu ra
- Với mỗi bộ dữ liệu, ghi ra trên một dòng số \(P\) mà Nguyên muốn tìm
Ví dụ 1
Input
2
a aa bb cc def ghi
a a a a a bb bb bb bb c c
Output
3
5