第一行输入两个整数
。
第二行输入
个整数
。
输出一个整数,表示
的最大值。
1 1 1
0
可选子序列有(空序列)和
,其元素和分别为
、
;取模
后结果均为
,因此答案为
。
n, m = map(int, input().split(" "))
A = [int(_) for _ in input().split(" ")]
# print(n, m, A)
R = [0]
def create(index: int, s: int):
if s >= R[0]:
for i in range(index + 1, n):
s1 = s + A[i]
if s1 % m > R[0]:
R[0] = s1 % m
create(i, s1)
for i in range(0, n):
create(i, A[i])
print(R[0])