0001. Окружность
Input file name: | input.txt |
Output file name: | output.txt |
Time limit: | 2 s |
Memory limit: | 64 megabytes |
Дана окружность с центром в точке (x0, y0) и радиусом R. Требуется найти точки её пересечения с осью OX (ось абсцисс).
Формат входного файла
В первой строке входного файла находятся 3 целых числа: x0, y0, R. Координаты центра по модулю не превосходят 1000, а радиус окружности √ натуральное число, тоже не превосходящее 1000.
Формат выходного файла
В первой строке выходного файла выведите число точек пересечения, далее выведите абсциссы этих точек в порядке возрастания. Числа выводите по одному в строке. Ответ считается правильным если отличается от эталонного не более чем на 10^(-6).
Пример:
input.txt | output.txt |
---|---|
0 3 2 | 0 |
0 2 2 | 1 0 |
0 4 5 | 2 -3.0000000 3.000000 |
Примечание
Выводите числа, округляя до 6 знаков после запятой.
В языке Паскаль это можно сделать следующим методом:
Writeln(f, x:0:6); {x - переменная, которую нужно вывести в файл f}В языке С:
fprintf(f, "%0.6lf", x); // x ≈ переменная типа double, которую нужно вывести в файл f;В языке C++:
out.setf(ios::fixed | ios::showpoint); out.precision(6); out << x; // x - переменная, которую нужно вывести в файл out.
Source: Районная олимпиада РК по информатике, 2007.
Discuss Submit a solution
Printable version