Quadratic equation whose roots are K times the roots of given equation - GeeksforGeeks

13 May, 2021
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 = 2Output: 1 4 4Explanation: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 = 2Output: 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++
Java
Python3
C#
Javascript
// 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 equationvoid findEquation(int A, int B, int C,                  int K){    // Print quadratic equation    cout << A << " " << K * B         << " " << K * K * C;} // Driver Codeint main(){    int A = 1, B = 2, C = 1, K = 2;     findEquation(A, B, C, K);     return 0;}
// Java program for the above approachimport java.util.*; class GFG{ // Function to find the quadratic// equation whose roots are K times// the roots of the given equationstatic void findEquation(int A, int B,                         int C, int K){         // Print quadratic equation    System.out.print(A + " " + K * B +                      " " + K * K * C);} // Driver Codepublic 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 equationdef findEquation(A, B, C, K):       # Prquadratic equation    print(A, K*B, K*K*C) # Driver Codeif __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 approachusing System; class GFG{ // Function to find the quadratic// equation whose roots are K times// the roots of the given equationstatic void findEquation(int A, int B,                         int C, int K){         // Print quadratic equation    Console.Write(A + " " + K * B +                      " " + K * K * C);} // Driver Codepublic 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 equationfunction findEquation(A, B, C, K){     // Print quadratic equation    document.write( A + " " + K * B         + " " + K * K * C);} // Driver Codevar 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)
 
mohit kumar 29
ukasp
itsok
noob2000
maths-power
root
Greedy
Mathematical
Greedy
Mathematical
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Optimal Page Replacement Algorithm
Program for Best Fit algorithm in Memory Management
Program for First Fit algorithm in Memory Management
Bin Packing Problem (Minimize number of used Bins)
Max Flow Problem Introduction
Program for Fibonacci numbers
Set in C++ Standard Template Library (STL)
C++ Data Types
Merge two sorted arrays
Modulo Operator (%) in C/C++ with Examples