using System.Collections.Generic;
public static void Main()
int[] array = { 1, 1, 4, 4, 4, 4, 8 };
Console.WriteLine(OnlyUniqueBitwise(array));
public static int OnlyUnique(int[] arr)
Dictionary<int, bool> uniques = new Dictionary<int, bool>();
if (uniques.ContainsKey(val))
IEnumerable<int> onlyUniques = uniques.Where(a => a.Value == true).Select(a => a.Key);
return onlyUniques.Count() > 1 ? -1 : onlyUniques.First();
public static int OnlyUniqueBitwise(int[] arr)
for (int i = 1; i < arr.Length; i++)
return arr.Contains(x) ? x : -1;