#include <bits/stdc++.h>
using namespace std;
const long long N = (long long)(5e5) + 322;
const long long INF = (long long)(1e9);
const long long mod = (long long)(1e9) + 7;
const double eps = 1e-9;
int n, k, s, dp[3][151][30000], a[N], mn = INF, q = 1;
int main() {
  ios_base ::sync_with_stdio(false);
  cin.tie(0);
  cin >> n >> k >> s;
  for (long long i = 1; i <= n; ++i) cin >> a[i];
  s = min(s, n * (n + 1) / 2);
  memset(dp, 0x3f3f3f3f, sizeof dp);
  dp[0][0][0] = 0;
  for (long long i = 1; i <= n; ++i) {
    for (long long j = 1; j <= i; ++j) {
      for (long long swp = 0; swp <= s; ++swp) {
        dp[q][0][swp] = 0;
        dp[q][j][swp] = min(dp[q][j][swp], dp[q ^ 1][j][swp]);
        if (swp - abs(i - j) >= 0)
          dp[q][j][swp] =
              min(dp[q][j][swp], dp[q ^ 1][j - 1][swp - abs(i - j)] + a[i]);
      }
    }
    q ^= 1;
  }
  for (long long swp = 0; swp <= s; ++swp) {
    mn = min(dp[q ^ 1][k][swp], mn);
  }
  cout << mn;
  return 0;
}
