rt
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=110;
const int Max=5000;
int n,YS1,ys1[maxn],val[maxn],dp[50010],MIN=0x7f7f7f7f;
signed main(){
cin >>n >>YS1;
for(int i=1;i<=n;i++){
cin >>ys1[i] >>val[i];
}
for(int i=1;i<=YS1+Max;i++){
dp[i]=MIN;
}
for(int i=1;i<=n;i++){
for(int j=ys1[i];j<=YS1+Max;j++){
dp[j]=min(dp[j],dp[j-ys1[i]]+val[i]);
}
}
for(int i=YS1;i<=YS1+Max;i++){
MIN=min(MIN,dp[i]);
}
cout <<MIN;
return 0;
}