From dd5ec27bb2d5543805eca416564465f090e29d4b Mon Sep 17 00:00:00 2001 From: Matej Focko Date: Fri, 4 Oct 2024 21:18:47 +0200 Subject: [PATCH] =?UTF-8?q?cs:=20add=20=C2=AB2491.=20Divide=20Players=20In?= =?UTF-8?q?to=20Teams=20of=20Equal=20Skill=C2=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Matej Focko --- cs/divide-players-into-teams-of-equal-skill.cs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 cs/divide-players-into-teams-of-equal-skill.cs diff --git a/cs/divide-players-into-teams-of-equal-skill.cs b/cs/divide-players-into-teams-of-equal-skill.cs new file mode 100644 index 0000000..d0f8736 --- /dev/null +++ b/cs/divide-players-into-teams-of-equal-skill.cs @@ -0,0 +1,18 @@ +public class Solution { + public long DividePlayers(int[] skill) { + Array.Sort(skill); + + var expectedSkill = skill[0] + skill[skill.Length - 1]; + + long chemistry = 0; + for (int i = 0, j = skill.Length - 1; i < j; ++i, --j) { + if (skill[i] + skill[j] != expectedSkill) { + return -1; + } + + chemistry += skill[i] * (long)skill[j]; + } + + return chemistry; + } +}