#include #include #include #include int* initArr(int noOfElements) { int* arr = (int *)malloc(sizeof(int) * noOfElements); memset(arr, 0, noOfElements); return arr; } int numOfCalls = 0; int change(int* coins, int noOfCoins, int amount) { numOfCalls++; static int* minChange = initArr(amount+1); if (minChange[amount] != 0) { //Number of coins for the searched amount had allreday been calculated. return minChange[amount]; } for (int i=0; i