Boboniu trò chuyện với Du

Đề bài

Mô tả

Du sẽ trò chuyện trong nhóm chat trong n ngày. Anh ta có một dãy gồm n số a1,a2,,an, mỗi số là "độ vui" của một lần phát biểu. Trước khi bắt đầu, bạn được phép sắp xếp lại dãy này theo một hoán vị bất kỳ.

Quản trị viên có tâm trạng là hằng số m. Xét theo thứ tự từng ngày i=1,2,,n:

  • Nếu ngày i Du được phép nói, anh ta phát biểu với độ vui ai. Sau đó:
    • Nếu ai>m, quản trị viên tức giận và cấm nói Du trong d ngày tiếp theo, tức các ngày i+1,i+2,,min(i+d,n).
    • Ngược lại (nếu aim), không có gì xảy ra.
  • Nếu ngày i Du đang bị cấm nói, anh ta không làm gì cả (ngày đó không tính độ vui).

Tổng độ vui là tổng các ai của những ngày mà Du được phép nói. Hãy tìm tổng độ vui lớn nhất trên tất cả các hoán vị có thể của dãy a.

Dữ liệu vào

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

Dữ liệu ra

In ra một số nguyên: tổng độ vui lớn nhất.

Ràng buộc

  • 1dn105
  • 0m109
  • 0ai109

Ví dụ

Input Output Giải thích
5 2 11
8 10 15 23 5
48 Chọn hoán vị [15,5,8,10,23]. Ngày 1 nói 15 (>11) nên bị cấm ngày 2, 3. Ngày 4 nói 10, ngày 5 nói 23 (>11, bị cấm ngày 6, 7 nhưng đã hết ngày). Tổng =15+10+23=48.
20 2 16
20 5 8 2 18 16 2 16 16 1 5 16 2 13 6 16 4 17 21 7
195 Sắp xếp hợp lý để dùng được nhiều số lớn nhất mà vẫn nói được hết các số 16.

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