Open In App

# Find the ratio of number of elements in two Arrays from their individual and combined average

Given the average of elements in two arrays as ‘a’ and ‘b’ respectively, and their combined average as ‘c’, the task is to find the ratio of the number of elements in two array.
Examples:

```Input:  a = 2, b = 8, c = 5
Output: 1:1

Input: a = 4, b = 10, c = 6
Output: 2:1```

Approach:

• Let the number of elements in two arrays are respectively x and y.
• So sum of all elements in the combined array is .
• Total number of elements in the combined array is and let .
• So,

So,
• Here f is our required answer.

Below is the implementation of the above Approach:

## C++

 `// C++ program to Find the Ratio``// of number of Elements in two Arrays``// from their individual and combined Average` `#include ``using` `namespace` `std;` `// C++ function to find the ratio``// of number of array elements``void` `FindRatio(``int` `a, ``int` `b, ``int` `c)``{` `    ``int` `up = ``abs``(b - c);``    ``int` `down = ``abs``(c - a);` `    ``// calculating GCD of them``    ``int` `g = __gcd(up, down);` `    ``// make neumarator and``    ``// denominator coprime``    ``up /= g;``    ``down /= g;` `    ``cout << up << ``":"``         ``<< down << ``"\n"``;``}` `// Driver Code``int` `main()``{` `    ``int` `a = 4, b = 10, c = 6;` `    ``FindRatio(a, b, c);` `    ``return` `0;``}`

## Java

 `// Java program to Find the Ratio``// of number of Elements in two Arrays``// from their individual and combined Average``class` `GFG``{``    ``static` `int` `gcd(``int` `a, ``int` `b)``    ``{``        ``if` `(b == ``0``)``            ``return` `a;``        ``return` `gcd(b, a % b);``        ` `    ``}``    ` `    ``// function to find the ratio``    ``// of number of array elements``    ``static` `void` `FindRatio(``int` `a, ``int` `b, ``int` `c)``    ``{``        ``int` `up = Math.abs(b - c);``        ``int` `down = Math.abs(c - a);``    ` `        ``// calculating GCD of them``        ``int` `g = gcd(up, down);``    ` `        ``// make neumarator and``        ``// denominator coprime``        ``up /= g;``        ``down /= g;``    ` `        ``System.out.println(up + ``":"` `+ down);``    ``}``    ` `    ``// Driver Code``    ``public` `static` `void` `main (String[] args)``    ``{``        ``int` `a = ``4``, b = ``10``, c = ``6``;``    ` `        ``FindRatio(a, b, c);``    ``}``}` `// This code is contributed by AnkitRai01`

## Python3

 `# Python3 program to Find the Ratio``# of number of Elements in two Arrays``# from their individual and combined Average``from` `math ``import` `gcd` `# function to find the ratio``# of number of array elements``def` `FindRatio(a, b, c):` `    ``up ``=` `abs``(b ``-` `c)``    ``down ``=` `abs``(c ``-` `a)` `    ``# calculating GCD of them``    ``g ``=` `gcd(up, down)` `    ``# make neumarator and``    ``# denominator coprime``    ``up ``/``/``=` `g``    ``down ``/``/``=` `g` `    ``print``(up,``":"``, down)` `# Driver Code``a ``=` `4``b ``=` `10``c ``=` `6` `FindRatio(a, b, c)` `# This code is contributed by Mohit Kumar`

## C#

 `// C# program to Find the Ratio``// of number of Elements in two Arrays``// from their individual and combined Average``using` `System;` `class` `GFG``{``    ``static` `int` `gcd(``int` `a, ``int` `b)``    ``{``        ``if` `(b == 0)``            ``return` `a;``        ``return` `gcd(b, a % b);``        ` `    ``}``    ` `    ``// function to find the ratio``    ``// of number of array elements``    ``static` `void` `FindRatio(``int` `a, ``int` `b, ``int` `c)``    ``{``        ``int` `up = Math.Abs(b - c);``        ``int` `down = Math.Abs(c - a);``    ` `        ``// calculating GCD of them``        ``int` `g = gcd(up, down);``    ` `        ``// make neumarator and``        ``// denominator coprime``        ``up /= g;``        ``down /= g;``    ` `        ``Console.WriteLine(up + ``":"` `+ down);``    ``}``    ` `    ``// Driver Code``    ``public` `static` `void` `Main (String []args)``    ``{``        ``int` `a = 4, b = 10, c = 6;``    ` `        ``FindRatio(a, b, c);``    ``}``}` `// This code is contributed by Arnab Kundu`

## Javascript

 ``

Output:

`2:1`

Time Complexity: O(log( min(abs(b-c),abs(c-a)) ) )

Auxiliary Space: O(1)