Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- #include<vector>
- using namespace std;
- vector<int>coin;
- int money,sum=100;
- void change(int tempmoney,vector<int>ans,int j){
- if(tempmoney==0){
- int tempmin=0;
- printf("(");
- for(int i=0;i<ans.size();i++){
- printf("%d",ans[i]);
- if(i<ans.size()-1)printf(",");
- tempmin+=ans[i];
- }
- printf(")\n");
- if(tempmin<sum)sum=tempmin;
- }
- if(j<coin.size()){
- for(int i=0;i<=money/coin[j];i++){
- if(tempmoney-coin[j]<0)return;
- if(i){tempmoney-=coin[j],ans[j]++;}
- change(tempmoney,ans,j+1);
- }
- }
- }
- int main(){
- int n;
- while(scanf("%d",&n)==1){
- vector<int>ans;
- for(int i=1,in;i<=n;i++){
- scanf("%d",&in);
- coin.push_back(in);
- ans.push_back(0);
- }
- scanf("%d",&money);
- change(money,ans,0);
- printf("%d\n\n",sum);
- coin.clear();
- ans.clear();
- sum=100;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement