Update appNew update is available. Click here to update.

Split Array With the Same Average

Last Updated: 15 Mar, 2021
Difficulty: Hard


Try Problem

A group of ninjas want to play a game of tag but they can only do that if each team has the same average strength of abilities among the two divided teams. You are given a list (array named ‘strengths’) of the strengths of the group of ninjas represented by numbers (integers). You have to determine whether those ninjas can be regrouped into two different teams such that the average strength of the two teams formed is equal.

You have to move each ninja of given strength from the given list into two separate teams (list) ‘Team_A’ and ‘Team_B’ such that the average strengths of ‘Team_A’ == ‘Team_B’. There has to be at least one member in each team since they cannot play the game without that.
For Example:
Input : [1, 7, 15, 29, 11, 9]
Output : [9, 15] [1, 7, 11, 29]

Explanation: The average strengths of both the teams is 12
Input Format:
The first line of input contains a single integer ‘N’ denoting the number of ninjas, whose list of strengths which would be given in the list.

The second line contains ‘N’ single space-separated integers, denoting the strengths of the ninjas.
Output Format :
Print "True" if the ninjas can be regrouped into two different teams having same average strengths and "False" is they cannot be regrouped.
You do not need to print anything, it has already been taken care of. Just implement the given function.
1 <= N <= 30
0 <= strengths[i] <= 10^4

Time Limit: 1 sec