Trại hè Phương Nam 2024 - Ước số
Xem dạng PDFTrong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài
Các ước số tự nhiên có vai trò quan trọng trong nhiều thuật toán mã hóa, chẳng hạn như RSA, một thuật toán mã hóa công khai phổ biến. Việc tạo ra dãy các ước số của một tập hợp số tự nhiên có thể giúp hiểu được cách các ước số phân phối và ảnh hưởng đến tính bảo mật của mã hóa. Là một người yêu thích môn mật mã, Nam quan sát đặc điểm các ước số của một tập hợp số tự nhiên thông qua bài toán sau.
Nam có một dãy số ~A~ gồm ~N~ phần tử, mỗi phần tử là một số tự nhiên khác ~0~. Gọi ~D~ là dãy các phần tử có giá trị không giảm gồm tất cả các ước số tự nhiên, không nhất thiết phải phân biệt của các phần tử của ~A~. Nam chuẩn bị dãy ~P~ gồm ~Q~ số tự nhiên khác ~0~, mỗi số biểu thị một vị trí trong dãy ~D~. Do dãy ~D~ chưa được cho trước mà phải tính toán thông qua các giá trị trong dãy ~A~ và ~N~, Nam mong muốn xác định nhanh từng giá trị phần tử trong dãy ~D~ tương ứng với mỗi phần tử thuộc dãy ~P~.
Ví dụ, với ~N=4~, ~A=(10,2,5,2)~ và ~P=(5,1,10)~, ta có dãy ~D=(1,1,1,1,2,2,2,5,5,10)~ và các giá trị phần tử trong dãy ~D~ tương ứng với mỗi phần tử thuộc dãy ~P~ là ~(2,1,10)~.
Yêu cầu: Hãy giúp Nam xác định từng phần tử trong dãy ~D~ tương ứng với mỗi phần tử trong dãy ~P~.
Input
Dòng đầu tiên chứa hai số nguyên dương ~N~ và ~Q~ lần lượt là số lượng phần tử dãy ~A~ và số lượng phần tử dãy ~P~ ~(1 \le N \le 10^6;\ 1 \le Q \le 10^5)~.
Dòng thứ hai chứa ~N~ số nguyên dương ~A_1,A_2,\dots,A_N~ mô tả dãy ~A~ ~(1 \le A_i \le 10^6)~.
Dòng thứ ba chứa ~Q~ số nguyên dương ~P_1,P_2,\dots,P_Q~ mô tả dãy ~P~ ~(1 \le P_i \le |D|)~, với ~|D|~ là số lượng phần tử dãy ~D~.
Các số trên cùng một dòng cách nhau bởi dấu cách.
Output
Duy nhất một dòng gồm ~Q~ số nguyên, cách nhau bởi dấu cách, là các phần tử trong dãy ~D~ tương ứng với các phần tử trong dãy ~P~.
Scoring
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | ~25\%~ | ~N,Q \le 1000~; ~A_i \le 1000~ với mọi ~1 \le i \le N~; ~P_i \le 1000~ với mọi ~1 \le i \le Q~ |
| 2 | ~25\%~ | ~A_i~ là số nguyên tố với mọi ~1 \le i \le N~ |
| 3 | ~20\%~ | ~N \le 10\,000~; ~P_i \le 2 \cdot 10^6~ với mọi ~1 \le i \le Q~ |
| 4 | ~20\%~ | ~P_i \le 2 \cdot 10^6~ với mọi ~1 \le i \le Q~ |
| 5 | ~10\%~ | Không có ràng buộc gì thêm |
Sample Input 1
4 10
10 2 5 2
1 2 3 4 5 6 7 8 9 10
Sample Output 1
1 1 1 1 2 2 2 5 5 10
Sample Input 2
4 5
10 2 5 2
5 1 10 9 8
Sample Output 2
2 1 10 5 5
Notes
Trong ví dụ 1:
~N=4~;
~Q=10~;
~A=(10,2,5,2)~;
~D=(1,1,1,1,2,2,2,5,5,10)~.
Trong ví dụ 2:
~N=4~;
~Q=5~;
~A=(10,2,5,2)~;
~D=(1,1,1,1,2,2,2,5,5,10)~.
Bình luận