new algorithm. good for random dist, but bad for pathological setup (O(sqrt(n))). why?
damn it
...
ok, now we're talking. this seems indeed fast, but is still faulty - doesn't find some points