Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- int main()
- {
- int i,n,k=0;
- printf("How many coin do you have?\n");
- scanf("%d",&n);
- int array[n+1],arr[n];
- printf("Enter coins\n");
- for(i=0;i<n;i++)scanf("%d",&array[i]);
- printf("Enter amount\n");
- int taka;
- scanf("%d",&taka);
- int table[n+1][taka+2],j;
- for(i=0;i<n;i++)
- {
- for(j=0;j<=taka;j++)
- {
- if(i==0)table[i][j]=j/array[i];
- else
- {
- if(table[i-1][j]<(j/array[i]+table[i-1][j%array[i]]))table[i][j]=table[i-1][j];
- else table[i][j]=j/array[i]+table[i-1][j%array[i]];
- }
- }
- }
- i=n-1,j=taka;
- while(i>=0 && j>=0 && table[i][j]!=0)
- {
- if(table[i][j]!=table[i-1][j])
- {
- arr[k++]=array[i];
- j=j-array[i];
- }
- else i--;
- }
- printf("\nRequired minimum coins = %d\n",table[n-1][taka]);
- printf("Coins are\n");
- for(k=k-1;k>=0;k--)printf("%d ",arr[k]);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement