Limpando arrays bagunçados

Converta um array de strings que representam números inteiros não negativos em números e retorne dois arrays: o primeiro com os valores pares e o segundo com os ímpares. Preserve a ordem original dentro de cada grupo.

Se um grupo não tiver valores, use um array vazio para esse grupo.

Exemplos

Program.CleanUp(new string[] { "8" }) ➞ new int[][] { new int[] { 8 }, new int[] {  } }

Program.CleanUp(new string[] { "11" }) ➞ new int[][] { new int[] {  }, new int[] { 11 } }

Program.CleanUp(new string[] { "7", "4", "8" }) ➞ new int[][] { new int[] { 4, 8 }, new int[] { 7 } }

Program.CleanUp(new string[] { "9", "4", "5", "8" }) ➞ new int[][] { new int[] { 4, 8 }, new int[] { 9, 5 } }

Notas

Todos os valores de entrada são números inteiros não negativos escritos como strings.