#include <bits/stdc++.h>
using namespace std;
int n, f[105], ma[105];
int main() {
  int k, p, x;
  scanf("%d%d%d", &n, &k, &p);
  f[0] = 1000;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &x);
    x %= p;
    for (int j = min(k, i); j > 0; j--) {
      if (j == i) {
        f[j] = (j - 1 ? f[j - 1] : 0) + x;
        ma[j] = x;
        continue;
      }
      int a = f[j] + x, b = f[j - 1] + x;
      if (ma[j] + x >= p) a -= p;
      if (a < b)
        f[j] = a, (ma[j] += x) %= p;
      else if (a == b)
        f[j] = a, ma[j] = max((ma[j] + x) % p, x);
      else
        f[j] = b, ma[j] = x;
    }
    if (i == n) printf("%d", f[k]);
  }
  return 0;
}
