Для нахождения максимального треугольника, заметим, что одна из вершин всегда будет лежать на границах какой-либо дуги. Это верно, так как если все вершины лежат не на границах дуг, то мы можем "поворачивать" треугольник, пока одна из вершин не окажется на границе.
Тогда пусть у нас зафиксирована вершина, максимальный треугольник, который можно вписать в окружность — равносторонний, если для текущих ограничений его можно вписать, то он будет являться ответом.
Теперь предположим, что ответ дает треугольник, у которого ровно две точки лежат на границе, тогда чтобы максимизировать площадь, третья точка должна лежать на середине дуги, образованной данными точками. Если такой точки нет, то ответом будет треугольник, у которого все три точки лежат на границах.
Покажем, что если у треугольника только одна вершина лежит на границе, то у нас обязательно должен быть равносторонний треугольник. Пусть не так, но тогда мы точно можем подвинуть одну из точек, чтобы площадь нашего треугольника увеличилась (это нельзя сделать только в случае, если треугольник равносторонний).
Тогда ответ находится проверкой 3-х случаев. Когда одна вершина лежит на границах и треугольник равносторонний, когда ровно две вершины лежат на границах, и когда все три вершины лежат на границах.