public int Flipgame(int[] fronts, int[] backs) { var set = new HashSet <int>(fronts.Union(backs)); foreach (int x in fronts.Zip(backs, (a, b) => (Front: a, Back: b)).Where(tuple => tuple.Front == tuple.Back).Select(tuple => tuple.Front)) { set.Remove(x); } return(set.DefaultIfEmpty(0).Min()); }
//Validate that the we are using valid colors and set appropriate defaults if not. private void CheckForInvalidColorData() { HashSet<Color> validColors = new HashSet<Color>(); validColors.AddRange(TargetNodes.SelectMany(x => ColorModule.getValidColorsForElementNode(x, true))); if (validColors.Any() && (!validColors.Contains(_data.StaticColor) || !_data.ColorGradient.GetColorsInGradient().IsSubsetOf(validColors))) //Discrete colors specified { _data.ColorGradient = new ColorGradient(validColors.DefaultIfEmpty(Color.White).First()); _data.StaticColor = validColors.First(); } }
//Validate that the we are using valid colors and set appropriate defaults if not. private void CheckForInvalidColorData() { HashSet <Color> validColors = new HashSet <Color>(); validColors.AddRange(TargetNodes.SelectMany(x => ColorModule.getValidColorsForElementNode(x, true))); if (validColors.Any() && (!validColors.Contains(_data.StaticColor) || !_data.ColorGradient.GetColorsInGradient().IsSubsetOf(validColors))) //Discrete colors specified { _data.ColorGradient = new ColorGradient(validColors.DefaultIfEmpty(Color.White).First()); _data.StaticColor = validColors.First(); } }
public static int Sum(IEnumerable <int> multiples, int max) { var sumTotal = new HashSet <ulong>(); var x = 1_999_999_999UL + 1_999_999_999UL; foreach (int multiple in multiples.Where(m => m <= max && m > 0)) { ulong total = 0; while (total + (ulong)multiple < (ulong)max) { total += (ulong)multiple; sumTotal.Add(total); } } return((int)sumTotal.DefaultIfEmpty().Aggregate((a, b) => a + b)); }
public void TestCSharpSyntax() { var methodName = MethodBase.GetCurrentMethod().Name; ShowStarting(methodName); //const string path = @"C:\cygwin\home\kims336\Developments\InformedProteomics\InformedProteomics.Test\TestFiles\BSA_10ugml_IMS6_TOF03_CID_27Aug12_Frodo_Collision_Energy_Collapsed.UIMF"; //Console.WriteLine(Path.GetFileName(path)); //Console.WriteLine(Path.GetFileNameWithoutExtension(path)); //Console.WriteLine(Path.GetExtension(path)); //Console.WriteLine(Path.GetDirectoryName(path)); //const int size = int.MaxValue/4-1; //var hugeList = new List<int>(size); //Console.WriteLine("Success: " + size + " " + hugeList.Capacity); var set = new HashSet <double>(); Console.WriteLine("Max: " + set.DefaultIfEmpty().Max(n => n * 2)); }
public void Evaluate(int SpreadMax) { FFormerId.SliceCount = FIdFresh.SliceCount = FIdRemoved.SliceCount = 0; for (int i = 0; i < FRemove.SliceCount; i++) { var remove = FRemove[i]; remove = remove.Trim(); if (remove == "") { continue; } if (Data.ContainsKey(remove)) { var index = Data[remove]; FreeIndices.Add(index); Data.Remove(remove); Age.Remove(remove); FIdRemoved.Add(index); } } for (int i = 0; i < FInput.SliceCount; i++) { var input = FInput[i].Trim(); if (input == "") { continue; } int index; if (!Data.ContainsKey(input)) { index = FreeIndices.DefaultIfEmpty(int.MinValue).First();; if (index == int.MinValue) { index = RemoveOldest(); FIdRemoved.Add(index); } FreeIndices.Remove(index); FIdFresh.Add(index); } else { index = Data[input]; } Data[input] = index; Age[input] = DateTime.Now; FFormerId.Add(Data[input]); } var maxAge = FTimeOut[0]; var sessionEnabled = false; if (maxAge != null && maxAge.Ticks > 0) { sessionEnabled = true; } foreach (var item in Age.Keys.ToArray()) { var index = Data[item]; if (sessionEnabled && Age[item] + maxAge < DateTime.Now) { FreeIndices.Add(index); Data.Remove(item); Age.Remove(item); FIdRemoved.Add(index); } } var sorted = Data.Values.ToList(); sorted.Sort(); FId.AssignFrom(sorted); FOutput.SliceCount = 0; SpreadMax = sorted.Count; FOutput.AssignFrom( from key in sorted from index in Data.Keys where Data[index] == key select index ); }
public void TestCSharpSyntax() { var methodName = MethodBase.GetCurrentMethod().Name; ShowStarting(methodName); //const string path = @"C:\cygwin\home\kims336\Developments\InformedProteomics\InformedProteomics.Test\TestFiles\BSA_10ugml_IMS6_TOF03_CID_27Aug12_Frodo_Collision_Energy_Collapsed.UIMF"; //Console.WriteLine(Path.GetFileName(path)); //Console.WriteLine(Path.GetFileNameWithoutExtension(path)); //Console.WriteLine(Path.GetExtension(path)); //Console.WriteLine(Path.GetDirectoryName(path)); //const int size = int.MaxValue/4-1; //var hugeList = new List<int>(size); //Console.WriteLine("Success: " + size + " " + hugeList.Capacity); var set = new HashSet<double>(); Console.WriteLine("Max: " + set.DefaultIfEmpty().Max(n => n*2)); }