题库练习 Maximum Subsequence
← 上一题 下一题 →

A11422 | Maximum Subsequence

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

给定一个包含 $n$ 个整数的数组 $a$,以及一个整数 $m$。你需要选择一些下标组成序列 $b_1, b_2, \dots, b_k$($1 \le b_1 < b_2 < \dots < b_k \le n$),使得以下值最大化:

$$ \left( \sum_{i=1}^{k} a_{b_i} \right) \bmod m $$

可以选择空序列(此时和为 $0$)。

输出这个最大可能值。

输入格式

第一行包含两个整数 $n$ 和 $m$($1 \le n \le 35$,$1 \le m \le 10^9$)。

第二行包含 $n$ 个整数 $a_1, a_2, \dots, a_n$($1 \le a_i \le 10^9$)。

输出格式

输出一个整数,表示最大可能值。

输入输出样例

输入 #1
4 4
5 2 4 1
输出 #1
3
输入 #2
3 20
199 41 299
输出 #2
19
C++ 编辑器
输入
输出