[DHBB25 - DX02 - 10] Bài 3: Biểu diễn văn nghệ

Xem dạng PDF

Gửi bài giải

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

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

Trong 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

Một ban nhạc đang chuẩn bị cho một buổi biểu diễn đặc biệt, trong đó danh sách bài hát phải được sắp xếp một cách hợp lý để tạo hiệu ứng cao trào, giúp khán giả có trải nghiệm thú vị nhất. Mỗi bài hát trong danh sách có một mức độ sôi động được biểu thị bằng một số nguyên ~h_i~.

Để đảm bảo buổi biểu diễn có nhịp điệu hấp dẫn, ban nhạc quyết định lựa chọn một số bài hát từ danh sách gồm ~n~ bài, sao cho thứ tự biểu diễn thỏa mãn các nguyên tắc sau:

  • Các bài hát được chọn phải theo thứ tự tăng dần về vị trí trong danh sách.
  • Mở đầu bằng một bài hát có mức độ sôi động thấp, sau đó chuyển sang một bài sôi động hơn (nếu có).
  • Nếu bài hát hiện tại sôi động hơn bài trước đó, bài tiếp theo phải ít sôi động hơn bài hiện tại (nếu có).
  • Nếu bài hát hiện tại ít sôi động hơn bài trước đó, bài tiếp theo phải sôi động hơn bài hiện tại (nếu có).
  • Bài hát cuối cùng phải ít sôi động hơn bài trước đó (nếu có).

Nói cách khác, nếu ban nhạc chọn các bài hát có thứ tự ~i_1, i_2, \dots, i_k~ thì cần đảm bảo:

  • ~k~ là một số nguyên dương lẻ.
  • Các bài hát được chọn có thứ tự tăng dần: ~1 \le i_1 < i_2 < \dots < i_k \le n~.
  • Mức độ sôi động phải tuân theo quy luật: ~h_{i_1} < h_{i_2} > h_{i_3} < h_{i_4} > \dots > h_{i_k}~.

Tuy nhiên, do một số bài hát có thể gặp vấn đề về bản quyền, thiết bị âm thanh hoặc không phù hợp với sân khấu, có những đoạn trong danh sách không thể sử dụng. Vì vậy, ban nhạc đã đưa ra ~q~ giả định, mỗi giả định xác định một đoạn từ ~L~ đến ~R~, chỉ trong phạm vi này các bài hát mới có thể được lựa chọn.

Yêu cầu: Với mỗi giả định, hãy xác định số lượng bài hát nhiều nhất có thể chọn sao cho vẫn tuân thủ các quy tắc đã đặt ra.

Input

  • Dòng đầu tiên chứa hai số nguyên ~n~ và ~q~, lần lượt là số bài hát trong danh sách và số giả định (~1 \le n, q \le 2 \times 10^5~).
  • Dòng thứ hai chứa ~n~ số nguyên mô tả mức độ sôi động của từng bài hát (~1 \le h_i \le 10^9~).
  • ~q~ dòng tiếp theo, mỗi dòng chứa hai số nguyên ~L, R~ mô tả một giả định (~1 \le L \le R \le n~).

Output

  • Gồm ~q~ dòng, dòng thứ ~i~ in ra một số nguyên là số bài hát nhiều nhất có thể chọn trong giả định thứ ~i~, theo thứ tự xuất hiện trong dữ liệu.

Sample Input 1

6 1
2 1 2 2 1 1
2 6

Sample Output 1

3

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.