You have an unlimited amount of banknotes worth A and B dollars (A not equals to B). You want to pay a total of S dollars using exactly N notes. The task is to find the number of notes worth A dollars you need. If there is no solution return -1.
Input: A = 1, B = 2, S = 7, N = 5 Output: 3 3 * A + 2 * B = S 3 * 1 + 2 * 2 = 7
Approach: Let x be the number of notes of value A required then the rest of the notes i.e. N – x must of value B. Since, their sum is required be S then the following equation must be satisfied:
S = (A * x) + (B * (N – x)) Solving the equation further, S = (A * x) + (B * N) – (B * x) S – (B * N) = (A – B) * x x = (S – (B * N)) / (A – B) After solving for x, it is the number of notes of value A required only if the value of x is an integer else the result is not possible.
Below is the implementation of the above approach:
Please Login to comment...