#include using namespace std; int dp[1000000001] = {0}; int a[100001] = {1}; int main() { freopen("coins.in", "r", stdin); freopen("coins.out", "w", stdout); ios::sync_with_stdio(0); cin.tie(0); int n, s; cin >> n >> s; for(int i = 1; i <= n; i++) { int k; cin >> k; a[i] = a[i-1]*k; } dp[0] = 0; for(int i = 1; i <= s; i++) { //cout << "s = " << i << endl; int k = 999999999; for(int j = 0; j <= n; j++) { if(i-a[j] >= 0) { k = min(k,dp[i-a[j]]+1); //cout << dp[i-a[j]]+1 << " " << i-a[j] << " " << k << endl; } } dp[i] = k; } cout << dp[s] << endl; return 0; }