Given three integers a, b and c such that a + b + c = 0. The task is to find the roots of a quadratic equation ax2 + bx + c = 0.Examples:
Input: a = 1, b = 2, c = -3 Output: 1, -3Input: a = -5, b = 3, c = 2 Output: 1, -2.5
Approach: When a + b + c = 0 then the roots of the equation ax2 + bx + c = 0 are always 1 and c / a. For example,
Take a = 3, b = 2 and c = -5 such that a + b + c = 0 Now, the equation will be 3×2 + 2x – 5 = 0 Solving for x, 3×2 + 5x – 3x – 5 = 0 x * (3x + 5) -1 * (3x + 5) = 0 (x – 1) * (3x + 5) = 0 x = 1, x = (-5 / 3) = (c / a)
Below is the implementation of the above approach:
C++ // C++ implementation of the approach #include <bits/stdc++.h> using namespace std; // Function to print the roots of the // quadratic equation when a + b + c = 0 void printRoots(long a, long b, long c) { cout << 1 << “, ” << c / (a * 1.0); } // Driver code int main() { long a = 2; long b = 3; long c = -5; printRoots(a, b, c); return 0; } Java // Java implementation of the approach class GFG { // Function to print the roots of the // quadratic equation when a + b + c = 0 static void printRoots(long a, long b, long c) { System.out.println(1 + “, ” + c / (a * 1.0)); } // Driver Code public static void main (String[] args) { long a = 2; long b = 3; long c = -5; printRoots(a, b, c); } } // This code is contributed by // sanjeev2552 Python3 # Python3 implementation of the approach # Function to print the roots of the # quadratic equation when a + b + c = 0 def printRoots(a, b, c): print(1, “,”, c / (a * 1.0)) # Driver code a = 2 b = 3 c = -5 printRoots(a, b, c) # This code is contributed by Mohit Kumar C# // C# implementation of the approach using System; class GFG { // Function to print the roots of the // quadratic equation when a + b + c = 0 static void printRoots(long a, long b, long c) { Console.WriteLine(“1, ” + c / (a * 1.0)); } // Driver code public static void Main() { long a = 2; long b = 3; long c = -5; printRoots(a, b, c); } } // This code is contributed by Nidhi PHP <?php // PHP implementation of the approach // Function to print the roots of the // quadratic equation when a + b + c = 0 function printRoots($a, $b, $c) { echo “1”; echo “, “; echo $c / ($a * 1.0); } // Driver code $a = 2; $b = 3; $c = -5; printRoots($a, $b, $c); // This code is contributed by Naman_Garg. ?> JavaScript <script> // Javascript implementation of the approach // Function to print the roots of the // quadratic equation when a + b + c = 0 function printRoots(a, b, c) { document.write(1 + “, ” + c / (a * 1.0)); } // Driver code var a = 2; var b = 3; var c = -5; printRoots(a, b, c); // This code is contributed by noob2000. </script>
Time Complexity: O(1), there is only basic arithmetic that happens in constant time.
Auxiliary Space: O(1), no extra space is taken.
