Duyên hải Bắc Bộ 2023 - Dữ liệu
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
Dữ liệu tài chính của một công ty trong ~n~ ngày được biểu diễn bằng một dãy số ~t_1, t_2, ..., t_n~, trong đó ~t_i~ (~1 \le i \le n~) là lượng tiền thu về của ngày thứ ~i~. Lãnh đạo công ty thường xuyên yêu cầu thống kê số liệu về tổng tiền lớn nhất thu được của hai ngày liên tiếp trong các ngày từ ngày ~L~ đến ngày ~R~ (~L < R~), nghĩa là cần tìm giá trị lớn nhất trong các giá trị ~(t_i + t_{i+1})~ với ~L \le i < R~.
Một nhân viên đã truy cập trái phép dữ liệu của công ty và trước mỗi lần lãnh đạo công ty yêu cầu thống kê số liệu, nhân viên sẽ tìm cách đảo ngược một đoạn dữ liệu nào đó trong các ngày từ ngày ~L~ đến ngày ~R~ với mục đích khi thống kê dữ liệu trong đoạn từ ngày ~L~ đến ngày ~R~ thì giá trị trả về càng lớn càng tốt. Ví dụ, nếu đảo ngược đoạn từ ngày ~i~ đến ngày ~j~ (~L \le i \le j \le R~) trên dữ liệu ban đầu ~t_1, t_2, ..., t_i, t_{i+1}, ..., t_j, ..., t_n~ thì dữ liệu thay đổi là ~t_1, t_2, ..., t_j, t_{j-1}, ..., t_i, ..., t_n~. Sau khi thống kê số liệu xong, người này sẽ lại thay đổi dữ liệu như ban đầu.
Yêu cầu: Cho biết dữ liệu ban đầu là ~t_1, t_2, ..., t_n~ và ~q~ lần yêu cầu thống kê dữ liệu, hãy cho biết số liệu thống kê trả về khi bị can thiệp vào dữ liệu.
Input
- Dòng đầu chứa hai số nguyên dương ~n, q~;
- Dòng thứ hai chứa ~n~ số nguyên không âm ~t_1, t_2, ..., t_n~ (~t_i \le 10^9~);
- Dòng thứ ~k~ (~1 \le k \le q~) trong ~q~ dòng sau, mỗi dòng chứa hai số nguyên mô tả yêu cầu thống kê dữ liệu ~L, R~ (~1 \le L < R \le n~).
Output
- Ghi ra thiết bị ra chuẩn gồm ~q~ dòng, mỗi dòng chứa một số nguyên là giá trị mà lãnh đạo công ty nhận được khi yêu cầu thống kê dữ liệu tương ứng trong file dữ liệu vào.
Sample Input 1
5 2
5 2 3 1 3
1 5
4 5
Sample Output 1
8
4
Giải thích:
- Với yêu cầu thống kê thứ nhất, đảo ngược đoạn từ ngày 1 đến ngày 2 để có dữ liệu mới: 2 5 3 1 3, kết quả thống kê được là 8.
- Với yêu cầu thống kê thứ hai, đảo ngược đoạn từ ngày 4 đến ngày 5 để có dữ liệu mới: 5 2 3 3 1, kết quả thống kê được là 4.
Subtasks
- Subtask 1 (50 điểm): ~n, q \le 50~;
- Subtask 2 (25 điểm): ~n, q \le 5000~;
- Subtask 3 (25 điểm): ~n, q \le 10^5~.

Bình luận