trang chủ / bài tập / notimetodry

Không Có Thời Gian Chờ Khô

Đề bài

Mô tả

N đoạn hàng rào liên tiếp, mỗi đoạn cần được sơn một màu nhất định. Màu được đánh số từ 1 đến N theo thứ tự độ đậm tăng dần (màu 1 nhạt nhất, màu N đậm nhất). Ban đầu tất cả các đoạn chưa được sơn màu nào.

Một nét sơn có thể sơn một đoạn liên tiếp bất kỳ với một màu duy nhất, với điều kiện không được sơn màu nhạt hơn lên vùng đã có màu đậm hơn (chỉ được sơn màu đậm hơn lên màu nhạt hơn, không được ngược lại).

Q truy vấn độc lập với nhau. Mỗi truy vấn cho một đoạn [a,b]: hỏi cần ít nhất bao nhiêu nét sơn để hoàn thành màu cho tất cả các đoạn trong [a,b] đúng như yêu cầu, trong khi không sơn vào bất kỳ đoạn nào ngoài [a,b]?

Dữ liệu vào

Dòng đầu tiên chứa hai số nguyên NQ.

Dòng thứ hai chứa N số nguyên c1,c2,,cN — màu mong muốn của từng đoạn hàng rào.

  • Q dòng tiếp theo, mỗi dòng chứa hai số nguyên ab mô tả một truy vấn.

Dữ liệu ra

Với mỗi truy vấn, in ra một số nguyên duy nhất trên một dòng.

Ràng buộc

  • 1N,Q2×105
  • 1ciN
  • 1abN

Ví dụ

Input Output Giải thích
8 4
1 2 2 1 1 2 3 2
4 6
3 6
1 6
5 8
2
3
3
3
Truy vấn [4,6] tương ứng với dãy 1 1 2: cần 2 nét. Truy vấn [3,6] tương ứng 2 1 1 2: cần 3 nét. Truy vấn [1,6] tương ứng 1 2 2 1 1 2: cần 3 nét. Truy vấn [5,8] tương ứng 1 2 3 2: cần 3 nét.

Ghi chú

Mỗi truy vấn được xử lý độc lập — kết quả của truy vấn này không ảnh hưởng đến truy vấn khác.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0