Chọn ĐTQG ĐHSPHN 2026 - Đếm đoạn

Xem dạng PDF

Gửi bài giải

Điểm: 100,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Cho dãy số nguyên dương ~a_1, a_2, \dots, a_n~. Một đoạn con không rỗng ~[l,r]~ được gọi là phù hợp với giá trị ~x~ nếu

~\min_{l \le i \le r} a_i \cdot \max_{l \le i \le r} a_i \le x~.

Với mỗi truy vấn, hãy đếm số đoạn con phù hợp.

Input

  • Dòng đầu chứa hai số nguyên ~n~ và ~q~ (~1 \le n \le 10^5~, ~1 \le q \le 20~).

  • Dòng thứ hai chứa ~n~ số nguyên ~a_1,a_2,\dots,a_n~ (~1 \le a_i \le 10^9~).

  • Mỗi dòng trong ~q~ dòng tiếp theo chứa một số nguyên ~x~ (~1 \le x \le 10^{18}~).

Output

Với mỗi truy vấn, in ra trên một dòng số đoạn con phù hợp.

Scoring

Subtask Điểm Ràng buộc
1 ~25\%~ ~n \le 500~
2 ~25\%~ ~n \le 5000~
3 ~50\%~ Không có giới hạn gì thêm

Sample Input 1

4 3
1 3 2 4
3
8
16

Sample Output 1

3
8
10

Notes

Với ~x=3~, ba đoạn phù hợp là ~[1,1]~, ~[1,2]~ và ~[1,3]~.

Với ~x=16~, cả ~10~ đoạn con không rỗng đều phù hợp.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.