$ Геометрия vb = [Ваня] sk = [Сережа.K] sm = [Сережа.М] # $sk$ Основы ## Векторное и скаляроное произведение. Расстояние от круга до квадрата. ## Погрешность ## Выпуклая оболочка за O(nlogn) ## Проверка, лежит ли точка в многоугольнике за O(n) ## Ориентация многоугольника по часов стрелке (считаем площадь, reverse) # $sk$ ScanLine ## Проверить, есть ли пересечение отрезков за nlogn ## Найти все пересечения отрезков за (n+k)logn ## Посчитать, какие точки видимы из данной ## Посчитать освещенную площадь ## Проверка в Offline для каждой точки, лежит ли она в многоугольнике. # $sm$ Два указателя !## Общая касательная для двух выпуклых многоугольников за O(n) ## Расстояние между двумя выпуклыми непересекающимися многоугольниками за O(n) ## Максимальное расстояние между точками в 2D за O(ConvexHull + n) ## Треугольник максимальной площади за O(n^2). А еще бывает O(ConvexHull + n)! ## Четырехугольник максимальной площади за O(n^2) !## Сумма Минковского за O(n) ## Количество четверок точек, образующих выпуклый четырехугольник за O(n^2logn) !# $sm$ За log! !## Опорные прямые !## Касательные из точки к многоугольнику (произвольному, построим выпуклую оболочку) !## Проверка, внутри ли точка выпуклого многоугольника в Online