using System.Collections.Generic;
public static void Main()
Console.WriteLine("Hello World");
var l = new List<double>() { 0, 0 + 1e-7, 0 + 2e-7, 1 - 1e-7, 1 };
var result = new Dictionary<double,List<double>>();
double? key = result.Keys.Any(x => IsWithinTolerance(x,i)) ? result.Keys.First(x => IsWithinTolerance(x,i)) : default(double?);
result.Add(i, new List<double> { i });
result[key.Value].Add(i);
Console.WriteLine(string.Join("\n", result.Select(x => string.Join(" ", x.Value))));
static bool IsWithinTolerance(double x, double y)
return Math.Abs(x - y) < 1e-6;