#YHW1704. 最大余数

最大余数

题目:子集和的最大余数求解

题目描述

给定 nn 个整数 a1,a2,,ana_1, a_2, \cdots, a_n 以及一个整数 mm ,需要从这 nn 个给定数字里挑选任意多个数字,使它们的和除以 mm 所得的余数尽可能大,最后输出这个最大余数。

输入格式

  • 第一行:两个整数 nnmm ,分别表示给定数字的个数以及除数。
  • 第二行:nn 个整数 a1,a2,,ana_1, a_2, \cdots, a_n ,代表给定的数字。

输出格式

输出一个整数,即满足条件的最大余数。

数据范围

  • 对于 30%30\% 的数据,1n101\leq n\leq10
  • 对于 60%60\% 的数据,1n201\leq n\leq20
  • 对于 100%100\% 的数据,1n401\leq n\leq401ai1091\leq a_i\leq10^91m1091\leq m\leq10^9

示例

  • 输入
5 233
1 10 100 1000 10000
  • 输出
225
  • 说明:选择部分数字相加得到 100111001110011mod233=22510011\bmod{233} = 225 ,这就是能得到的最大余数。