class Solution { public: int minMoney(vector<int>& arr, int aim) { vector<int>dp(aim+1,0x3f3f3f3f); dp[0]=0; for(auto x:arr) for(int j=0;j<=aim;j++) if(j-x>=0)dp[j]=min(dp[j],dp[j-x]+1); return dp[aim]==0x3f3f3f3f?-1:dp[aim]; } };