Given two integers r1 and r2, representing the radius of two circles, the task is to find the radius of the circle having area equal to the sum of the area of the two circles having given radii.
Examples:
Input:
r1 = 8
r2 = 6
Output:
10
Explanation:
Area of circle with radius 8 = 201.061929
Area of a circle with radius 6 = 113.097335
Area of a circle with radius 10 = 314.159265Input:
r1 = 2
r2 = 2
Output:
2.82843
Approach: Follow the steps below to solve the problem:
- Calculate area of the first circle is a1 = 3.14 * r1 * r1.
- Calculate area of the second circle is a2 = 3.14 * r2 * r2.
- Therefore, area of the third circle is a1 + a2.
- Radius of the third circle is sqrt(a3 / 3.14)
Below is the implementation of the following approach.
C++14
// C++ implementation of // the above approach #include <bits/stdc++.h> using namespace std; // Function to calculate radius of the circle // having area equal to sum of the area of // two circles with given radii double findRadius( double r1, double r2) { double a1, a2, a3, r3; // Area of first circle a1 = 3.14 * r1 * r1; // Area of second circle a2 = 3.14 * r2 * r2; // Area of third circle a3 = a1 + a2; // Radius of third circle r3 = sqrt (a3 / 3.14); return r3; } // Driver Code int main() { // Given radius double r1 = 8, r2 = 6; // Prints the radius of // the required circle cout << findRadius(r1, r2); return 0; } |
Java
// Java program to implement // the above approach import java.util.*; class GFG { // Function to calculate radius of the circle // having area equal to sum of the area of // two circles with given radii static double findRadius( double r1, double r2) { double a1, a2, a3, r3; // Area of first circle a1 = 3.14 * r1 * r1; // Area of second circle a2 = 3.14 * r2 * r2; // Area of third circle a3 = a1 + a2; // Radius of third circle r3 = Math.sqrt(a3 / 3.14 ); return r3; } // Driver code public static void main(String[] args) { // Given radius double r1 = 8 , r2 = 6 ; // Prints the radius of // the required circle System.out.println(( int )findRadius(r1, r2)); } } // This code is contributed by code_hunt. |
Python3
# Python program to implement # the above approach # Function to calculate radius of the circle # having area equal to sum of the area of # two circles with given radii def findRadius(r1, r2): a1, a2, a3, r3 = 0 , 0 , 0 , 0 ; # Area of first circle a1 = 3.14 * r1 * r1; # Area of second circle a2 = 3.14 * r2 * r2; # Area of third circle a3 = a1 + a2; # Radius of third circle r3 = ((a3 / 3.14 ) * * ( 1 / 2 )); return r3; # Driver code if __name__ = = '__main__' : # Given radius r1 = 8 ; r2 = 6 ; # Prints the radius of # the required circle print ( int (findRadius(r1, r2))); # This code is contributed by 29AjayKumar |
C#
// C# program to implement // the above approach using System; class GFG { // Function to calculate radius of the circle // having area equal to sum of the area of // two circles with given radii static double findRadius( double r1, double r2) { double a1, a2, a3, r3; // Area of first circle a1 = 3.14 * r1 * r1; // Area of second circle a2 = 3.14 * r2 * r2; // Area of third circle a3 = a1 + a2; // Radius of third circle r3 = Math.Sqrt(a3 / 3.14); return r3; } // Driver code static void Main() { // Given radius double r1 = 8, r2 = 6; // Prints the radius of // the required circle Console.WriteLine(( int )findRadius(r1, r2)); } } // This code is contributed by susmitakundugoaldanga |
Javascript
<script> // Javascript program of the above approach // Function to calculate radius of the circle // having area equal to sum of the area of // two circles with given radii function findRadius(r1, r2) { let a1, a2, a3, r3; // Area of first circle a1 = 3.14 * r1 * r1; // Area of second circle a2 = 3.14 * r2 * r2; // Area of third circle a3 = a1 + a2; // Radius of third circle r3 = Math.sqrt(a3 / 3.14); return r3; } // Driver Code // Given radius let r1 = 8, r2 = 6; // Prints the radius of // the required circle document.write(findRadius(r1, r2)); </script> |
10
Time Complexity: O(log(a3)), time complexity of the inbuilt sqrt() function is logn.
Space Complexity: O(1) as constant space is being used.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!