|
Вписанная окружность
(Время: 1 сек. Память: 16 Мб Сложность: 68%)
Очень интересными объектами, которые изучаются в планиметрии, являются вписанные и описанные окружности. Известно, например, что вокруг любого треугольника можно описать окружность и в любой треугольник можно вписать окружность. А что будет, если вместо треугольника задан выпуклый многоугольник?
Требуется написать программу, которая определяет, можно ли в заданный выпуклый многоугольник вписать окружность, и, если это можно сделать, то вычисляет координаты ее центра и радиус.
Входные данные
Первая строка входного файла INPUT.TXT содержит количество вершин многоугольника n (3 ≤ n ≤ 8). Последующие n строк содержат координаты вершин многоугольника в порядке обхода против часовой стрелки, каждая i-ая из них содержит два целых числа: xi и yi, значения которых не превосходят 1000 по абсолютной величине.
Выходные данные
В первой строке выходного файла OUTPUT.TXT необходимо вывести YES, если окружность, вписанная в заданный многоугольник, существует, в противном случае следует вывести слово NO . В случае положительного ответа во второй строке следует указать координаты центра окружности и ее радиус с точностью, не худшей чем 10-3.
Примеры
№ | INPUT.TXT | OUTPUT.TXT |
1 | 4
0 0
1 0
1 1
0 1
| YES 0.500 0.500 0.500 |
2 | 4
0 0
1 0
1 2
0 2
| NO |
Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!
| |