#include <bits/stdc++.h>
using namespace std;
int i, j, k, n, m, K, an;
int x[160], f[160][160 * 160 / 2], g[160];
int main() {
  scanf("%d%d%d", &n, &m, &K);
  for (i = 1; i <= n; i++) scanf("%d", &x[i]), g[i] = g[i - 1] + x[i];
  K = min(K, n * n / 2);
  memset(f, 120, sizeof(f));
  an = f[0][0];
  f[0][0] = 0;
  int s = 0;
  for (i = n; i; i--) {
    for (k = s; k >= 0; k--)
      for (j = m; j >= 0; j--)
        if (f[j][k] < 1e9) {
          int A = f[j][k];
          if (i + j < m) break;
          int B = k + (i - m + j);
          if (B <= K) f[j + 1][B] = min(f[j + 1][B], A + x[i]);
        }
    s = min(K, s + n);
  }
  for (k = 0; k <= K; k++) an = min(an, f[m][k]);
  printf("%d\n", an);
  return 0;
}
