#include using namespace std; typedef long long ll; int main() { ll n,x,mn=0,mx=0; cin>>n>>x; vectora(n); for(ll i=0;i>a[i]; for(auto p:a) { if(p<0)mn+=p; else mx+=p; } if(xmx) { cout<<-1<dp(mx-mn+1,INT_MAX); dp[0+tz]=0; for(auto p:a) { if(p>=0) { for(ll s=mx; s>=mn+p; s--) if(dp[s-p+tz]!=INT_MAX) dp[s+tz]=min(dp[s+tz],dp[s-p+tz]+1); } else { for(ll s=mn; s<=mx+p; s++) if(dp[s-p+tz]!=INT_MAX) dp[s+tz]=min(dp[s+tz],dp[s-p+tz]+1); } } if(dp[x+tz]!=INT_MAX) cout<