trang chủ / đề bài / hp_tst_26_f

Dãy số

Đề bài

Mô tả

Cho dãy a gồm n số nguyên dương. Các số trong dãy được đánh số thứ tự từ 1 đến n. Mỗi phần tử i (1≤i≤n) có giá trị trái xi và giá trị phải là yi. Cho q truy vấn, mỗi truy vấn gồm hai số nguyên l,r (1≤l≤r≤n), yêu cầu tìm hai phần tử i,j thỏa mãn đồng thời các điều kiện sau:

  • l≤i<j≤r;
  • xi≤|i−j|≤yi;
  • xj≤|j−i|≤yj;
  • |ai−aj| đạt giá trị lớn nhất.

Yêu cầu: Với mỗi truy vấn, in ra giá trị |ai−aj| lớn nhất có thể. Nếu không có hai phần tử nào thỏa mãn thì in ra −1.

Dữ liệu vào

  • Dòng đầu tiên chứa số nguyên dương n (1≤n≤2·105) là số phần tử của dãy;
  • n dòng tiếp theo, dòng thứ i (1≤i≤n) chứa ba số nguyên ai,xi,yi (1≤ai≤109,1≤xi≤yi≤n) lần lượt là giá trị, giá trị trái, giá trị phải của số thứ i;
  • Dòng tiếp theo chứa số nguyên q (1≤q≤2·105) là số truy vấn;
  • q dòng tiếp theo, mỗi dòng gồm hai số nguyên l,r mô tả một truy vấn.

Dữ liệu ra

Gồm q dòng. Dòng thứ i (1≤i≤q) ghi một số nguyên duy nhất là kết quả tìm được cho truy vấn thứ i.

Ràng buộc

  • 1≤n,q≤2·105
  • 1≤ai≤109, 1≤xi≤yi≤n
  • 1≤l≤r≤n

Subtasks

  • Subtask 1 (20% số điểm): n,q≤500.
  • Subtask 2 (30% số điểm): n,q≤2000.
  • Subtask 3 (50% số điểm): Không có giới hạn gì thêm.

Ví dụ

Input Output Giải thích
5
8 3 3
2 1 1
4 1 2
3 1 1
70 1 2
5
3 5
2 4
1 5
3 4
1 4
67
2
67
1
2
Truy vấn (3,5): chọn i=4,j=5 (|i−j|=1 nằm trong [x4,y4]=[1,1] và [x5,y5]=[1,2]), |3−70|=67. Truy vấn (2,4): chọn i=2,j=3, |2−4|=2. Truy vấn (3,4): chỉ có cặp i=3,j=4, |4−3|=1.
4
5 2 3
1 1 2
9 1 1
6 2 3
5
1 4
1 3
2 4
4 4
1 2
8
8
8
-1
-1
Ví dụ thêm (không có trong đề gốc). Cặp i=2,j=3 hợp lệ với |1−9|=8. Truy vấn (1,2): cặp (1,2) có |i−j|=1<x1=2 nên không hợp lệ.

Bình luận

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

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0