DIFFE - Chênh lệch
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 1.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: admin

Các bài tập về dãy số rất hay và thường xuyên gặp trong các kỳ thi. Hôm nay bài tập thử thách cho các bạn là tìm độ chênh lệch như sau:

Cho một dãy số gồm N số nguyên dương A1, A2, … An. Với một cặp số (u,v) bạn hãy tìm độ chênh lệch bé nhất khi chia đoạn con [Au .. Av] thành hai phần.

Bạn hãy xem ví dụ:

+ Cho dãy A: 3 1 4 2 5

+ Với cặp (u,v) = (2,5) bạn cần tìm chênh lệch nhỏ nhất khi chia đoạn này ra hai phần. Ví dụ có các cách chia sau: (1) và (4,2,5); (1,4) và (2,5); (1,4,2) và (5); (1,4,2,5) và (); Khi đó chênh lệch bé nhất là 2 - Tương ứng với cặp (1,4) (2,5).

Input: 

+ Dòng đầu tiên là hai số nguyên dương N, Q (1 ≤ N, K ≤ 105). Q là số lượng truy vấn.

+ Dòng tiếp theo là N số nguyên dương trong dãy A (Ai ≤ 109; i = 1, 2, …, n).

+ Q dòng tiếp theo mỗi dòng là 2 số nguyên dương (u,v). Mỗi cặp số là một truy vấn cần bạn trả lời.

Output: 

Gồm Q dòng, dòng thứ i là giá trị chênh lệch nhỏ nhất tìm được ứng với truy vấn i.

Ví dụ

  • input
    5 1
    3 1 4 2 5
    2 5
    output
    2
  • input
    5 2
    5 3 1 7 1
    2 5
    1 3
    output
    4
    1
Back to Top