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

Xóa theo đoạn giá trị

Đề bài

Mô tả

Cho một dãy gồm n số nguyên a1,a2,,an và một số nguyên x. Đảm bảo rằng 1aix với mọi i.

Với mỗi cặp (l,r), định nghĩa phép biến đổi f(l,r) là: xóa khỏi dãy a tất cả các phần tử có giá trị nằm trong đoạn [l,r] (tức mọi ai thỏa lair), rồi trả về dãy còn lại (giữ nguyên thứ tự các phần tử không bị xóa).

Ví dụ, nếu a=[4,1,1,4,5,2,4,3] thì f(2,4)=[1,1,5].

Hãy đếm số cặp (l,r) thỏa 1lrx sao cho dãy f(l,r) được sắp xếp không giảm. Lưu ý dãy rỗng cũng được coi là đã sắp xếp.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên nx.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.

Dữ liệu ra

  • In ra một số nguyên duy nhất: số cặp (l,r) thỏa mãn.

Ràng buộc

  • 1n,x106
  • 1aix

Ví dụ

Input Output Giải thích
3 3
2 3 1
4 Các cặp hợp lệ là (1,1), (1,2), (1,3)(2,3). Chẳng hạn (1,3) xóa hết dãy còn lại rỗng (đã sắp xếp).
7 4
1 3 1 2 2 4 3
6 Các cặp hợp lệ là (1,3), (1,4), (2,3), (2,4), (3,3)(3,4).

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.400 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.2 gforth 0.7.3 gfortran 12.2.0 go 1.27.0 groovyc 5.1.1 javac 25.0.4 node 26.8.1 julia 1.12.7 kotlinc 2.4.10 lean 4.33.1 sbcl 2.2.9 lua 5.4.9 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.10 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.14.7 racket 8.7 ruby 4.0.6 rustc 1.98.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.3.3 tclsh 8.6 bun 1.4.0 deno 2.9.6 v 0.5.2 zig 0.16.0