Encuentra el número único en un arreglo
Devuelve el entero cuya cantidad de apariciones difiere de la de los demás valores. Todos los demás valores aparecen la misma cantidad de veces. Si todos los valores proporcionados aparecen con la misma frecuencia, devuelve cualquiera de los valores del arreglo.
Ejemplos
Program.FindSingleNumber(new[] {2, 2, 2, 3, 4, 4, 4}) ➞ 3
Program.FindSingleNumber(new[] {2}) ➞ 2
Program.FindSingleNumber(System.Array.Empty<int>()) ➞ null
Program.FindSingleNumber(new[] {7, 13, 3, 6, 5, 4, 4, 13, 5, 3, 6, 7, 6, 5, 3, 13, 4, 7, 13, 5, 7, 4, 3, 6, 8, 4, 3, 7, 5, 6, 13}) ➞ 8
Program.FindSingleNumber(new[] {1, 2, 3, 6, 5, 4, 4, 2, 5, 3, 6, 1, 6, 5, 3, 2, 4, 1, 2, 5, 1, 4, 3, 6, 101, 4, 3, 1, 5, 6, 2}) ➞ 101Notas
- No olvides usar
returnpara devolver el resultado. - Ten en cuenta que este desafío incluye dos validaciones:
- Si la entrada está vacía, debes devolver
null(ejemplo #3). - Si el arreglo contiene un solo elemento, debes devolver ese elemento (ejemplo #2).
- Si la entrada está vacía, debes devolver
- Siempre hay 1 o 0 números únicos en la entrada. Nunca hay dos ni tres+ números únicos.
- Pista: Prueba a usar un diccionario para contar las apariciones.
- Si te atascas o tu solución resulta demasiado complicada, consulta la pestaña Recursos.