#JX1013. 强哥的背包DP入门题

强哥的背包DP入门题

题目描述

坤坤给了强哥 𝑛 个数字让他练习求余。 但是坤坤只给了 𝑛 个被除数,并没有说除数是几,只说除数的范围是 [𝑙,𝑟]。强哥决定 自己设置除数,于是她从[𝑙,𝑟]中选择了一个正整数 𝑘,然后对每一个数字都对 𝑘 求余,得到了 𝑛 个新的数字。

强哥希望n个新的数字之和尽可能小,于是他想问问你应该如何设置k,如果有多种可能的答案,请输出最小的那一个

输入格式

输入第一行包含三个正整数 𝑛,𝑙,𝑟。(1lr3000,1n3000)(1 \le l \le r \le 3000, 1 \le n \le 3000)意义如题面所示。
接下来一行包含 𝑛 个正整数,其中第 𝑖 个正整数为 𝑎𝑖(1𝑎𝑖4000)𝑎_𝑖(1 \le 𝑎_𝑖 \le 4000)

输出格式

1 20 1000
1002
167
3 7 8
21 22 23
7

提示

对于样例1: 设置成334也可以让取余结果为0,但是题目要求输出最小的k,所以输出167

对于样例2:将𝑘设置为 7,则三个数字对 7 求余的结果分别是 0,1,2,求和得到 3。设置为 8 求余结果分别 为 5,6,7,求和结果得到18。3更小,所以将k设置为7