HSG THPT Thanh Hóa 2021 - Mua Quà

View as PDF

Submit solution


Points: 0.25 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: BAI3.INP
Output: BAI3.OUT

Author:
Problem type
Allowed languages
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Nhân dịp chào đón Giáng sinh, Thành quyết định lấy hết tiền học bổng của mình để mua toàn bộ ~N~ món quà lưu niệm tặng các bạn nữ trong lớp, các món quà được đánh số từ ~1~ đến ~N~, món thứ ~i~ có giá là ~a_i~, ~i = 1 \div N~. Cảm động trước hành động của Thành, chủ cửa hàng đã có chương trình khuyến mãi đặc biệt dành cho em. Thành được phép chia ~N~ món quà thành một hay nhiều đơn hàng với điều kiện hai món quà bất kì trong một đơn phải có giá chênh lệch nhau không bé hơn ~K~. Với mỗi đơn hàng như vậy, Thành chỉ phải thanh toán số tiền là giá của món quà đắt nhất trong đơn đó mà thôi.

Yêu cầu: Giúp Thành chia ~N~ món quà thành các đơn hàng sao cho tổng số tiền phải trả cho tất cả đơn hàng là nhỏ nhất.

Input

Vào từ tệp văn bản BAI3.INP gồm ~2~ dòng:

  • Dòng thứ nhất chứa hai số nguyên dương ~N~ và ~K~ (~N \le 10^5, K \le 10^9~)

  • Dòng thứ hai gồm ~N~ số nguyên dương ~a_1, a_2,.. a_N~ (~a_i \le 10^9, i = 1 \div N~)

Output

Ghi ra tệp văn bản BAI3.OUT một số nguyên duy nhất là tổng số tiền phải trả.

Scoring

Subtask Điểm Giới hạn
1 ~50~ ~N \le 10^4~
2 ~50~ Không ràng buộc gì thêm

Sample Input 1

3 2
1 3 3

Sample Output 1

6

Comments

Please read the guidelines before commenting.



  • -1
    hh772024  commented on March 4, 2025, 8:19 a.m.

    cái sample bị sao vậy ạ hay mình hiểu sai. giá là 1 3 3 thì gộp nó thành một đơn thì chỉ cần trả là 3 mà nhỉ, sao lại kết quả sample là 6


  • -1
    tnhngoc26  commented on Nov. 24, 2024, 3:40 a.m.

    mn cho e xin code bài này vs đc k ạ


  • -1
    fourteenl14m  commented on Nov. 13, 2024, 7:58 a.m.

    Ai có test case cho bài này ko ạ cho mình xin ạ ^^


  • -1
    keelythuytrang  commented on Oct. 28, 2024, 2:50 p.m.

    ai gải thích giúp mình cái input output với đọc đề vẫn chưa hiểu lắm-,-


  • -1
    nguyentrieuvy  commented on June 23, 2024, 2:12 a.m.

    ủa tui sao output ra 3 v mn?


    • -2
      RussVN123  commented on June 23, 2024, 7:26 a.m. edit 4

      Sai á anh hihi


  • -1
    PhoDP  commented on June 16, 2024, 12:32 p.m.

    Làm ơn đi


    • -1
      baonamt034  commented on June 16, 2024, 12:32 p.m.

      Hửm.Chúng ta có cùng cảnh ngộ


      • 0
        PhoDP  commented on June 16, 2024, 12:37 p.m.

        Cái này là đã có cùng cảnh ngộ nha:)))


        • -1
          baonamt034  commented on June 16, 2024, 12:37 p.m.

          Soi kỹ thế bạn


      • -1
        PhoDP  commented on June 16, 2024, 12:33 p.m.

        Làm ơn giúp mình đi mà please


      • -1
        PhoDP  commented on June 16, 2024, 12:33 p.m.

        Vậy bạn đã hiểu chưa


        • -1
          baonamt034  commented on June 16, 2024, 12:34 p.m.

          Có lẽ là sơ sơ


          • 0
            PhoDP  commented on June 16, 2024, 12:34 p.m.

            Vậy help đi tui đọc hướng dẫn ko hiểu


            • -1
              baonamt034  commented on June 16, 2024, 12:35 p.m.

              Bạn làm được sub 1 chưa


              • 0
                PhoDP  commented on June 16, 2024, 12:36 p.m.

                Chưa kể mình còn ko biết cách lặp trâu nữa


                • -1
                  baonamt034  commented on June 16, 2024, 12:36 p.m.

                  Ca này chịu thua


              • 0
                PhoDP  commented on June 16, 2024, 12:35 p.m.

                Chưa Do ko hiểu đề


  • 1
    PhoDP  commented on June 16, 2024, 12:31 p.m.

    Có ai giải thích thuật toán giúp ko Tui đọc hướng dẫn ko hiểu Cho tui cảm ơn trước nha


    • 0
      RussVN123  commented on June 23, 2024, 7:55 a.m.

      Này tham lam thôi á bạn , vì giá trị nào cũng phải lấy nên để đạt bé nhất thì cố gắng gom lại nhiều giá trị vào một nhóm nhất