trang chủ / đề bài / dhbb23_clc_10_b

MIDD

Đề bài

Mô tả

Cho một dãy số A gồm N phần tử A1,A2,…,AN, ta định nghĩa trung vị của dãy A như sau: gọi B là dãy thu được sau khi sắp xếp A theo thứ tự tăng dần. Khi đó phần tử thứ ⌊N+12⌋ của dãy B (đánh số từ 1) được gọi là trung vị của dãy A. Như vậy với dãy có độ dài chẵn, trung vị là phần tử bên trái trong hai phần tử đứng giữa; chẳng hạn trung vị của dãy (7,3) là 3.

Yêu cầu: Cho dãy số A gồm N phần tử A1,A2,…,AN. Với mỗi cặp chỉ số [l,r] sao cho 1≤l≤r≤N, gọi M(l,r) là phần tử trung vị của dãy Al,Al+1,…,Ar. Hỏi có bao nhiêu cặp chỉ số [l,r] mà có phần tử trung vị lớn hơn hoặc bằng một giá trị S cho trước.

Dữ liệu vào

  • Dòng đầu ghi hai số nguyên N,S (2≤N,S≤105).
  • Dòng thứ hai ghi N số nguyên của dãy ban đầu A1,A2,…,AN (|Ai|≤109).

Dữ liệu ra

In ra một số nguyên duy nhất là số đoạn [l,r] có trung vị lớn hơn hoặc bằng S.

Ràng buộc

  • 2≤N≤105.
  • 2≤S≤105.
  • |Ai|≤109.

Subtasks

  • Subtask 1 (30% số test): N≤400.
  • Subtask 2 (40% số test): 400<N≤5000.
  • Subtask 3 (30% số test): 104≤N≤105.

Mỗi test có số điểm như nhau.

Ví dụ

Input Output Giải thích
3 10
20 5 10
3 Có ba dãy con có trung vị lớn hơn hoặc bằng 10 là: {20}, {10}, {20,5,10}.
4 5
7 3 5 -2
3 Ba đoạn thỏa mãn là {7}, {5}, {7,3,5} (trung vị 5, bằng S vẫn được tính). Đoạn {7,3} có độ dài chẵn, sau khi sắp xếp là (3,7) nên trung vị là phần tử thứ 1, bằng 3<5; cả dãy sắp xếp thành (−2,3,5,7) có trung vị 3.

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