Spook
Эта "неприятность" свойственна алгоритму, предложенному тов.
ewert. В принципе, этот алгоритм считается стандартным, потому что очевиден, платить приходится огромной сложностью по сравнению с возможной -

.
Мне для практических нужд хватало этой сложности, тем более, что на самом деле там стоит

, где

- число точек в выпуклой оболочке множества.
Простой с виду и, видимо, с точки зрения реализации алгоритм со сложность

приведён в первой ссылке.
На самом деле, теоретические сложности - это, конечно, здорово и интересно, но на практике они нужны далеко не всегда и потому зачастую представляют собой просто интерес или даже спорт. Понятно, что

является оптимальной сложностью в нашей задаче (нужно же прочитать входные данные хотя бы), поэтому можно считать, что задача решена полностью. Однако константа в

большом наверняка кроется такая, что

при разумных значениях

будет не сильно хуже, а возможно и лучше.
Во всяком случае подобные вещи наблюдаются во многих алгоритмах, ближайшие, что приходит на ум, - умножение чисел метотом Карацубы (два

-битовых числа можно умножить "в столбик" за время

, а метод Карацубы позволяет это сделать за

; впрочем, используя быстрое преобразование Фурье эта задача решается за время что-то вроде

), поиск

-порядковой статистики за линейное время (то есть поиск

-го по величине элемента массива; тривиальное решение - отсортировать весь массив за время

и найти искомый элемент оказывается практически наилучшим), Фиббоначиевы кучи (отдельная тема, в двух словах не рассказать). Всё это познавательно, но не всегда практично.