#ABC281D. 最大倍数

最大倍数

[ABC281D] 最大倍数

题目描述

给定一个非负整数序列 A=(a1,a2,,aN)A=(a_1,a_2,\ldots,a_N)

SS 为从 AA 中选取(下标不同的)KK 个项的和所构成的非负整数集合。

请找出 SS 中能被 DD 整除的最大数。若 SS 中不存在 DD 的倍数,则输出 -1

输入格式

输入通过标准输入按以下形式给出:

NN KK DD a1a_1 \ldots aNa_N

输出格式

输出答案。

输入输出样例 #1

输入 #1

4 2 2
1 2 3 4

输出 #1

6

输入输出样例 #2

输入 #2

3 1 2
1 3 5

输出 #2

-1

说明/提示

限制条件

  • 1KN1001 \leq K \leq N \leq 100
  • 1D1001 \leq D \leq 100
  • 0ai1090 \leq a_i \leq 10^9
  • 输入均为整数

样例解释 1

列举从 AA 中选取 22 个项的所有方法:

  • a1a_1a2a_2,和为 1+2=31+2=3
  • a1a_1a3a_3,和为 1+3=41+3=4
  • a1a_1a4a_4,和为 1+4=51+4=5
  • a2a_2a3a_3,和为 2+3=52+3=5
  • a2a_2a4a_4,和为 2+4=62+4=6
  • a3a_3a4a_4,和为 3+4=73+4=7

因此 S={3,4,5,6,7}S=\{3,4,5,6,7\},其中能被 22 整除的最大数是 66,故输出 66

样例解释 2

在此例中 S={1,3,5}S=\{1,3,5\},集合中所有数均不能被 22 整除,因此输出 -1