Given two integers n and m and a and b, in a single operation n can be multiplied by either a or b. The task is to convert n to m with a minimum number of given operation. If it is impossible to convert n to m with the given operation then print -1.
Input: n = 120, m = 51840, a = 2, b = 3 Output: 7 120 * 2 * 2 * 2 * 2 * 3 * 3 * 3 = 51840 Input: n = 10, m = 50, a = 5, b = 7 Output: 1 10 * 5 = 50
In the previous post, we discussed an approach using division.
In this post, we will use an approach which finds the minimum number of operations using recursion. The recursion will consist of two states, the number being multiplied by a or by b, and counting the steps. The minimum of both the steps will be the answer.
Below is the implementation of the above approach:
- Minimum number of operations required to reduce N to 1
- Minimum number of given operations required to reduce the array to 0 element
- Minimum prime number operations to convert A to B
- Minimum number of given operation required to convert n to m
- Find the minimum number of operations required to make all array elements equal
- Convert a number m to n using minimum number of given operations
- Minimum operations required to change the array such that |arr[i] - M| <= 1
- Minimum operations required to make all the elements distinct in an array
- Minimum operations required to make all the array elements equal
- Minimum operations of the given type required to make a complete graph
- Minimum operations required to modify the array such that parity of adjacent elements is different
- Count the number of operations required to reduce the given number
- Count the number of carry operations required to add two numbers
- Minimum number of given powers of 2 required to represent a number
- Minimum number of palindromes required to express N as a sum | Set 2
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.