Точки пересечения прямой и окружности
1000 мс · 256 МБ · всё или ничего
Прямая задана уравнением . Найдите её общие точки с окружностью.
В классной задаче требовалось только их количество, и всё решалось в целых числах. Здесь нужны сами координаты - а значит, без корней уже не обойтись.
Формат ввода
В первой строке - число запросов ().
В каждой из следующих строк - шесть чисел: центр окружности, радиус, затем , , . Числа целые, по модулю не превосходят , радиус положителен, и не равны нулю одновременно.
Формат вывода
Для каждого запроса выведите число общих точек, а затем их координаты - по одной в строке.
Если точек две, первой выведите ту, у которой меньше , а при равных - меньше . Точность .
Примеры
ввод
3 0 0 5 0 1 -5 0 0 5 1 0 0 0 0 5 0 1 -10
вывод
1 0 5 2 0 -5 0 5 0
ввод
2 0 0 5 3 4 -25 0 0 5 3 4 0
вывод
1 3 4 2 -4 3 4 -3
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.