#GESP1020. [GESP202406四级] 宝箱

[GESP202406四级] 宝箱

题目背景

2024 年 6 月 GESP C++ 四级编程第 2 题

题目描述

小杨发现了 nn 个宝箱,其中第 ii 个宝箱的价值是 aia_i

小杨可以选择一些宝箱放入背包并带走,但是小杨的背包比较特殊,假设小杨选择的宝箱中最大价值为 xx ,最小价值 为 yy ,小杨需要保证 xykx-y \leq k ,否则小杨的背包会损坏。

小杨想知道背包不损坏的情况下,自己能够带走宝箱的总价值最大是多少。

输入格式

第一行包含两个正整数 n,kn,k ,含义如题面所示。

第二行包含 nn 个正整数 a1,a2,...,ana_1,a_2,...,a_n ,代表宝箱的价值。

输出格式

输出一个整数,代表带走宝箱的最大总价值。

样例

5 1
1 2 3 1 2
7

样例解释

在背包不损坏的情况下,小杨可以拿走两个价值为 22 的宝箱和一个价值为 33 的宝箱。

数据范围

对于全部数据,保证有 $1 \leq n \leq 1000,0 \leq k \leq 1000,1 \leq a_i \leq 1000$ 。