C. Отрезок в круге
2000 мс · 256 МБ · всё или ничего
Дан круг и отрезок. Найдите длину той части отрезка, которая лежит внутри круга или на его границе.
Формат ввода
В первой строке (). В каждой из следующих строк семь целых чисел: , , — центр и радиус круга (), затем , , , — концы отрезка. Координаты по модулю не превосходят , концы отрезка различны.
Формат вывода
Для каждого запроса выведите одно число — длину части отрезка внутри круга.
Ответ принимается с абсолютной или относительной погрешностью .
Примеры
ввод
3 0 0 1 -5 0 5 0 0 0 1 0 0 0 3 0 0 2 3 3 5 5
вывод
2.000000000 1.000000000 0.000000000
ввод
2 0 0 5 -5 5 5 5 1 1 3 1 1 2 2
вывод
0.000000000 1.414213562
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.