Given three integers A, B, and C representing the coefficients of a quadratic equation Ax2 + Bx + C = 0 and a positive integer K, the task is to find the coefficients of the quadratic equation whose roots are K times the roots of the given equation.
Examples:
Input: A = 1, B = 2, C = 1, K = 2
Output: 1 4 4
Explanation:
The given quadratic equation x2 + 2x + 1 = 0.
Roots of the above equation are -1, -1.
Double of these roots are -2, -2.
Therefore, the quadratic equation with the roots (-2, -2) is x2 + 4x + 4 = 0.Input: A = 1, B = -7, C = 12, K = 2
Output: 1 -14 48
Approach: The given problem can be solved by using the concept of quadratic roots. Follow the steps below to solve the problem:
- Let the roots of the equation Ax2 + Bx + C = 0 be P and Q respectively.
- Then, the product of the roots of the above equation is given by P * Q = C / A and the sum of the roots of the above equation is given by P + Q = -B / A.
- Therefore, the product of the roots of the required equation is equal to:
(K * P ) * (K * Q) = K2 * P * Q = (K2 * C ) / A
- Similarly, the sum of the roots of the required equation is 2 * K (-B / C).
- Therefore, the required quadratic equation is equal to:
x2 – (Sum of the roots)x + (Product of the roots) = 0
=> Ax2 + (KB)x + (K2)C = 0
Below is the implementation of the above approach:
// C++ program for the above approach #include <bits/stdc++.h> using namespace std;
// Function to find the quadratic // equation whose roots are K times // the roots of the given equation void findEquation( int A, int B, int C,
int K)
{ // Print quadratic equation
cout << A << " " << K * B
<< " " << K * K * C;
} // Driver Code int main()
{ int A = 1, B = 2, C = 1, K = 2;
findEquation(A, B, C, K);
return 0;
} |
// Java program for the above approach import java.util.*;
class GFG{
// Function to find the quadratic // equation whose roots are K times // the roots of the given equation static void findEquation( int A, int B,
int C, int K)
{ // Print quadratic equation
System.out.print(A + " " + K * B +
" " + K * K * C);
} // Driver Code public static void main(String []args)
{ int A = 1 , B = 2 , C = 1 , K = 2 ;
findEquation(A, B, C, K);
} } |
# Python3 program for the above approach # Function to find the quadratic # equation whose roots are K times # the roots of the given equation def findEquation(A, B, C, K):
# Prquadratic equation
print (A, K * B, K * K * C)
# Driver Code if __name__ = = '__main__' :
A, B, C, K = 1 , 2 , 1 , 2
findEquation(A, B, C, K)
# This code is contributed by mohit kumar 29. |
// C# program for the above approach using System;
class GFG{
// Function to find the quadratic // equation whose roots are K times // the roots of the given equation static void findEquation( int A, int B,
int C, int K)
{ // Print quadratic equation
Console.Write(A + " " + K * B +
" " + K * K * C);
} // Driver Code public static void Main()
{ int A = 1, B = 2, C = 1, K = 2;
findEquation(A, B, C, K);
} } // This code is contributed by ukasp |
<script> // Javascript program for the above approach // Function to find the quadratic // equation whose roots are K times // the roots of the given equation function findEquation(A, B, C, K)
{ // Print quadratic equation
document.write( A + " " + K * B
+ " " + K * K * C);
} // Driver Code var A = 1, B = 2, C = 1, K = 2;
findEquation(A, B, C, K); // This code is contributed by noob2000. </script> |
1 4 4
Time Complexity: O(1)
Auxiliary Space: O(1)