wiley_pastebin

Question 20

Apr 11th, 2019
864
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 0.60 KB | None | 0 0
  1. public class CoinCounting{
  2.     public static void main (String[] args){
  3.         CoinCounting c = new CoinCounting();
  4.         int target = 5;
  5.         int[] coinSizes = {1, 2, 5};
  6.         System.out.println(c.coinCount(target, coinSizes));
  7.     }
  8.  
  9.     private void generateWays(int coin, int target, int[] ways){
  10.         for (int j = coin; j <= target; j++) {
  11.             ways[j] += ways[j - coin];
  12.         }
  13.     }
  14.  
  15.     public int coinCount(int target, int[] coinSizes){
  16.         int[] ways = new int[target+1];
  17.         ways[0] = 1;
  18.  
  19.         for (int i = 0; i < coinSizes.length; i++) {
  20.             generateWays(coinSizes[i], target, ways);
  21.         }
  22.  
  23.         return ways[ways.length-1];
  24.     }
  25. }
Advertisement
Add Comment
Please, Sign In to add comment