A very slow but simple algorithm devised by @frankblob Worst case: n^3 Average case: n^3 Best case: n with some modifications it could be adaptive but for now it's just cooked
@frankblob