#include <bits/stdc++.h>
using namespace std;
int n, k, s;
long long q[150];
void solve() {
  cin >> n >> k >> s;
  for (int i = 0; i < n; i++) {
    cin >> q[i];
  }
  if (n * n <= s) {
    sort(q, q + n);
    int ans = 0;
    for (int i = 0; i < k; i++) {
      ans += q[i];
    }
    cout << ans << endl;
    return;
  }
  vector<vector<long long>> prev(k + 1, vector<long long>(s + 1));
  vector<vector<long long>> curr(k + 1, vector<long long>(s + 1));
  for (int i = 0; i <= k; i++) {
    for (int j = 0; j <= s; j++) {
      prev[i][j] = (int)1e9;
    }
  }
  prev[1][0] = q[0];
  prev[0][0] = 0;
  for (int f = 1; f < n; f++) {
    for (int i = 0; i <= k; i++) {
      for (int j = 0; j <= s; j++) {
        curr[i][j] = prev[i][j];
        if (i > 0) {
          int cost = abs(f - (i - 1));
          if (j - cost >= 0) {
            curr[i][j] = min(prev[i][j], prev[i - 1][j - cost] + q[f]);
          }
        }
      }
    }
    swap(curr, prev);
  }
  cout << *min_element(prev[k].begin(), prev[k].end()) << endl;
}
int main() {
  ios::sync_with_stdio(false);
  solve();
  return 0;
}
