#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef pair<int,int> pii;
typedef pair<int,pii> pr;
int dp[1005][1005];
int minVal(int n,int wt,vector<int> &arr){
	if(wt<0){
		return 1e9;
	}
	if(n == 0){
		if(wt == 0){
			return 0;
		}
		return 1e9;
	}
	if(dp[n][wt]!=-1){
		return dp[n][wt];
	}
	if(arr[n-1] == -1){
		return dp[n][wt] = minVal(n-1,wt,arr);
	}
	return dp[n][wt] = min(arr[n-1] + minVal(n,wt-n,arr),minVal(n-1,wt,arr));
}
int main(int argc,char const* argv[]){
	ios_base::sync_with_stdio(false);
	cin.tie(nullptr);
	int n,w;
	cin>>n>>w;
	vector<int> arr(n);
	for(int i=0;i<n;i++){
		cin>>arr[i];
	}
	memset(dp,-1,sizeof(dp));
	int val = minVal(n,w,arr);
	if(val > 1e7){
		cout<<-1<<endl;
	}else{
		cout<<val<<endl;
	}
	return 0;
}