Given the constants of quadratic equation F(x) = Ax2 + Bx + C as A, B, and C and an integer K, the task is to find the smallest value of root x such that F(x) ≥ K. If no such values exist then print “-1”. It is given that F(x) is a monotonically increasing function.
Input: A = 3, B = 4, C = 5, K = 6
For the given values F(x) = 3x2 + 4x + 5 the minimum value of x is 1, F(x) = 12, which is greater than the given value of K.
Input: A = 3, B = 4, C = 5, K = 150
For the given values F(x) = 3x2 + 4x + 5 the minimum value of x is 7, F(x) = 180, which is greater than the given value of K.
Approach: The idea is to use Binary Search to find the minimum value of x. Below are the steps:
- To get the value equal to or greater than K, the value of x must be in the range [1, sqrt(K)] as this is a quadratic equation.
- Now, basically there is a need to search the appropriate element in the range, so for this binary search is implemented.
- Computing F(mid), where mid is the middle value for the range [1, sqrt(K)]. Now the following three cases are possible:
- If F(mid) ≥ K && F(mid) < K: This mean the current mid is the required answer.
- If F(mid) < K: This means the current value of mid is less than the required value of x. So, move towards the right, i.e., in the second half as F(x) is an increasing function.
- If F(mid) > K: This means the current value of mid is greater than the required value of x. So, move towards the left, i.e., the first half as F(x) is an increasing function.
Below is the implementation of the above approach:
Time Complexity: O(log(sqrt(K))
Auxiliary Space: O(1)
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Check whether one root of the Quadratic Equation is twice of other or not
- Check if roots of a Quadratic Equation are numerically equal but opposite in sign or not
- Find the quadratic equation from the given roots
- Roots of the quadratic equation when a + b + c = 0 without using Shridharacharya formula
- Check if roots of a Quadratic Equation are reciprocal of each other or not
- Program to find the Roots of Quadratic equation
- Smallest root of the equation x^2 + s(x)*x - n = 0, where s(x) is the sum of digits of root x.
- Program to find number of solutions in Quadratic Equation
- Boundary Value Analysis : Nature of Roots of a Quadratic equation
- Equation of straight line passing through a given point which bisects it into two equal line segments
- Smallest power of 4 greater than or equal to N
- Longest Subarray with Sum greater than Equal to Zero
- Smallest number greater than or equal to N divisible by K
- Longest subarray having average greater than or equal to x
- Highest and Smallest power of K less than and greater than equal to N respectively
- Smallest number greater than or equal to N using only digits 1 to K
- Smallest number greater than Y with sum of digits equal to X
- Smallest subarray from a given Array with sum greater than or equal to K
- Replace two consecutive equal values with one greater
- Number of non-decreasing sub-arrays of length greater than or equal to K
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. 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.
Improved By : offbeat