Элементарная геометрия


Плюсануть
Поделиться
Класснуть
Запинить


Условие задачи Прогресс
ID 25963. *Лапта
Темы: Бинарный поиск по ответу    Элементарная геометрия    Квадродерево   

При игре в лапту одна команда ловит мяч и пытается осалить им бегущего. Игрок другой команды должен, перед тем как бежать, ударить мяч в поле. Известно, на какое максимальное расстояние он может ударить, а также скорости и начальные координаты игроков другой команды. Требуется выбрать направление и силу удара так, чтобы минимальное время, которое потребуется другой команде, чтобы поднять мяч с земли, было наибольшим. (Пока мяч летит, игроки стоят на местах.)


Входные данные: 

- в первой строке входных данных содержатся два числа: D — максимальное расстояние удара и N — количество соперников на поле (D и N натуральные числа, \(D <= 1000\)\(N <= 200\)); 
- в следующих N строках задается по три числа – начальные координаты xi и yi и максимальная скорость vi соответствующего игрока (скорости и координаты — целые числа, \(–1000 <= x_i <= 1000\), \(0 <= y_i <= 1000\), \(0 < v_i <= 1000\)).
Никакие два игрока не находятся изначально в одной точке. Игрок, бьющий мяч, находится в точке с координатами (0,0). Мяч выбивается в точку с неотрицательной ординатой (\(y >=  0\)).


Выходные данные: выведите сначала время, которое потребуется игрокам, чтобы добежать до мяча, а затем координаты точки, в которую нужно выбить мяч. Если таких точек несколько, выведите координаты любой из них. Время и координаты нужно вывести с точностью \(10^{–3}\).
 

Примеры
Входные данные Выходные данные
1
10 2
1 1 1
-1 1 1
9.05539
0.00000 10.00000

ID 38137. Забор по часовой стрелке
Темы: Элементарная геометрия   

Фермер Джон решил заменить изгородь вокруг своего пастбища.
Эта новая изгородь описывается строкой символов, каждый из которых "N" (north), "E" (east), "S" (south), или "W" (west). Каждый символ описывает 1 метр изгороди. Например, если строка NESW, это означает, что изгородь начинатся одним метром на север, затем 1 метр на восток, затем 1 метр на юг, и затем 1 метр на запад, возвращаясь в стратовую точку.

Изгородь всегда заканчивается в той же позиции, где стартовала, и это - единственная точка, посещенная более одного раза путем изгороди (а стартовая точка, единственная точка посещённая второй раз - в конце пути). Как следствие, изгородь огораживает один связный регион травяного пастбища, даже если этот регион может иметь довольно странную форму.

Фермер Джон хочет узнать, указанный путь обходится по часовой стреле или против часовой стрелки? По часовой стрелке - огороженный регион находится по правую сторону от изгороди, если идти по пути, определённому строкой. Против часовой стрелки - огороженный регион находится по левую сторону от изгороди, если идти по пути, определённому строкой.

Входные данные: 
Первая строка содержит целое число N (1≤N≤20). Каждая из последующих N строк содержит строку длиной не менее 4 символов и не более 100, описывающую путь изгороди.
Выходные данные: 
Для каждого из N путей, описанных по вводе, выведите строку содержащую "CW" (clockwise - по часовой стрелке) или "CCW" (counterclockwise - против часовой стрелки).
 

Примеры
Входные данные Выходные данные Пояснение
1 2
NESW
WSSSEENWNEESSENNNNWWWS 
CW
CCW
Оба пути   (? символ "пробел") обозначает стартовую точку:

*>*
^ v

<*

  *<*<*<*
  v     ^
*<
     *
v       ^
* *>*>* *
v ^   v ^
* *<* * *
v   ^ v ^
*>*>* *>*

ID 38294. Метеорит
Темы: Элементарная геометрия   

Беда! К городу N приближается метеорит. Людей уже успели эвакуировать, но домам урона не избежать. Ученые уже выяснили, куда упадет метеорит. Вас, как сотрудника страховой компании, попросили выяснить количество домов, которые пострадают при падении метеорита.

Введём на плоскости прямоугольную систему координат. Город представляет собой прямоугольник n × m . Его левый нижний угол расположен в точке с координатами (0, 0) , а правый верхний угол в точке с координатами ( n - 1, m - 1) . В каждой точке с целыми координатами внутри или на границе этого прямоугольника находится дом. Дома в городе N маленькие, поэтому их можно считать точками.

Известно, что метеорит упал в точку ( x , y ) , а радиус его поражения равен r . Таким образом, все дома города на расстоянии не более r от точки падения метеорита получат повреждения. Найдите количество домов, которые получат повреждения.

Входные данные
Первая строка содержит два целых числа n , m ( 1 ≤ n , m ≤ 500 ) — размеры города N.

Вторая строка содержит три целых числа x , y , r ( - 500 ≤ x , y ≤ 500 ; 0 ≤ r ≤ 500 ) — координаты точки падения метеорита и радиус поражения, соответственно.

Выходные данные
Выведите одно число — количество повреждённых домов.

Примечание
Иллюстрация к тесту из примера: чёрными точками обозначены повреждённые дома, белыми — уцелевшие.

Примеры
Входные данные Выходные данные
1 2 3
1 2 1
3

ID 38297. Сломанный робот
Темы: Элементарная геометрия    Конструктив   

В 2037-м году для создания научно исследовательской базы на Марс высадился отряд роботов, один из которых отправился собирать информацию о районе дислокации. В данный момент роботу из-за отказа некоторых узлов срочно необходимо вернуться в место закладки будущей базы.
Поверхность Марса в районе высадки десанта можно условно представить в виде плоскости с введенной на ней системой координат, такой, что база находится в точке (0, 0). Робот же остановился в точке (x0, y0). Он может перемещаться в четырёх направлениях:
• «R» — вправо, при этом координата x робота увеличивается на 1;
• «L» — влево, при этом координата x робота уменьшается на 1;
• «U» — вверх, при этом координата y робота увеличивается на 1;
• «D» — вниз, при этом координата y робота уменьшается на 1.
Из-за неисправности робот не может совершить два перемещения подряд в одном направлении.
Помогите роботу вернуться на базу. Робот должен сделать не более 10000 передвижений, иначе он разрядится и не доедет до базы!

Входные данные
В единственной строке входных данных находятся два целых числа x0 и y0 — изначальные координаты робота (−1000 ≤ x0, y0 ≤ 1000).

Выходные данные
В первой строке выведите целое число, не большее 10000 — количество операций, которые должен сделать робот. Во второй строке выведите сами операции. Каждая операция задаётся одной буквой:
вправо — «R» влево — «L», вверх — «U», вниз — «D». Символы необходимо выводить без пробелов между ними.
 

Примеры
Входные данные Выходные данные
1 2 1 5
DLULD


Замечание
Вы не обязаны выводить кратчайший маршрут. Например, в приведенном примере кратчайший
маршрут состоит из 3 передвижений: влево, вниз, влево.
Иллюстрация к тесту из примера:

ID 38315. Треугольник
Темы: Элементарная геометрия   

На координатной плоскости расположены равнобедренный прямоугольный треугольник ABC с длиной катета d и точка X. Катеты треугольника лежат на осях координат, а вершины расположены в точках: A (0,0), B (d,0), C (0,d).

Напишите программу, которая определяет взаимное расположение точки X и треугольника. Если точка X расположена внутри или на сторонах треугольника, выведите 0. Если же точка находится вне треугольника, выведите номер ближайшей к ней вершины.

Входные данные
Сначала вводится натуральное число d(не превосходящее 1000), а затем координаты точки X – два целых числа из диапазона от ­–1000 до 1000.

Выходные данные
Если точка лежит внутри, на стороне треугольника или совпадает с одной из вершин, то выведите число 0. Если точка лежит вне треугольника, то выведите номер вершины треугольника, к которой она расположена ближе всего (1 – к вершине A, 2 – к B, 3 – к C). Если точка расположена на одинаковом расстоянии от двух вершин, выведите ту вершину, номер которой меньше.

Примеры
Входные данные Выходные данные Пояснение
1 5
1 1
0 Точка лежит внутри треугольника.
2 3
-1 -1
1 Точка лежит вне треугольника и ближе всего к ней вершина A
3 4
4 4
2 Точка лежит на равном расстоянии от вершин B и C,в этом случае нужно вывести ту вершину, у которой номер меньше, т.е. выведено должно быть число 2
4 4
2 2
0 Точка лежит на стороне треугольника.

ID 38348. Посчитайте лампы
Темы: Элементарная геометрия   

На новой станции метро, которую планируют открыть в конце этого года, будет N эскалаторов (эскалаторы пронумерованы подряд числами от 1 до N). Эскалаторы имеют длину L и расположены на расстоянии H друг от друга. Шириной эскалатором пренебрежем. Между каждыми двумя соседними эскалаторами (точно посередине) будет установлен ряд ламп. В ряду будет K ламп. Лампы устанавливаются по следующему принципу: всю длину эскалатора L разбивают на K равных отрезков и в середине каждого отрезка устанавливают по лампе (см. рисунок). Всего будет установлено (N–1)*K ламп.


На приведенном рисунке N=4 (эскалаторы показаны жирными <горизонтальными линиями), L=20, H=4, K=5.

Васе удалось проникнуть на эту станцию еще до ее открытия, и даже прокатиться на эскалаторе. Он выбрал эскалатор номер J. Посчитайте, в скольких точках эскалатора (включая его начало и конец) Вася будет видеть не все лампы (так как их будут загораживать другие лампы).

Входные данные
Во входном файле записаны числа N, L, H, K, J. Все числа — натуральные. 2≤N≤35, 1≤L≤1000, 1≤H≤1000, 1≤K≤35, 1≤J≤N.

Выходные данные
В выходной файл выведите одно число — ответ задачи.

Примеры
Входные данные Выходные данные
1 2 20 4 5 1 0
2 4 20 4 5 2 11

ID 38361. Дремучий лес
Темы: Элементарная геометрия   

Просека — эта такая прямая линия, которая проходит через лес (то есть деревья есть как с одной стороны от этой линии, так и с другой), и при этом она не проходит ни через одно из деревьев леса, а также не касается деревьев. Будем говорить, что лес является дремучим, если в нем нет ни одной просеки.

На плане леса все деревья изображаются кругами. Никакие два круга не пересекаются и не касаются друг друга. Требуется по этому плану определить, является ли лес дремучим.

Входные данные
Во входном файле содержится сначала целое число N — количество деревьев (1?N?200). Затем идет N троек чисел, задающих деревья. Первые два числа задают координаты центра, а третье — радиус. Все данные задаются точно, и выражаются вещественными числами, не более чем с 2 знаками после десятичной точки, по модулю не превосходящими 1000.

Выходные данные
В первой строке выходного файла должно содержаться сообщение YES, если лес является дремучим, и NO иначе. Во втором случае вторая строка выходного файла должна содержать координаты двух точек, через которые проходит просека. Все координаты нужно выводить с восемью знаками после десятичной точки, координаты не должны превышать 2000, и расстояние между выданными точками должно быть не меньше 100.
 

Примеры
Входные данные Выходные данные
1 3
 0.00 30.00 25.00
 0.00 -30.00 25.00
 40.00 0.00 16.00
NO
-833.3333340000 -552.7707973875
 833.3333340000 552.7707973875
2 3
0.00 30.00 29.00
0.00 -30.00 29.00
40.00 0.00 19.00
YES

ID 38387. Клад
Темы: Элементарная геометрия   

Найти закопанный пиратами клад просто: всё, что для этого нужно – это карта. Как известно, пираты обычно рисуют карты от руки и описывают алгоритм нахождения клада так: «Встаньте около одинокой пальмы. Пройдите тридцать шагов в сторону леса, потом семнадцать шагов в сторону озера, …, наконец десять шагов в сторону большого булыжника. Клад находится под ним». Большая часть таких указаний просто сводится к прохождению какого-то количества шагов в одном из восьми направлений (1 – север, 2 – северо-восток, 3 – восток, 4 – юго-восток, 5 – юг, 6 – юго-запад, 7 – запад, 8 – северо-запад) (см. рис). Длина шага в любом направлении равна 1.
    Путешествие по такому пути обычно является прекрасным способом посмотреть окрестности, однако в наше время постоянной спешки ни у кого нет времени на это. Поэтому кладоискатели хотят идти напрямую в точку, где зарыт клад. Например, вместо того, чтобы проходить три шага на север, один шаг на восток, один шаг на север, три шага на восток, два шага на юг и один шаг на запад, можно пройти напрямую, использовав около 3.6 шага (см. рис).


Вам необходимо написать программу, которая по указаниям пиратов определяет точку, где зарыт клад.
 Формат входных данных
    Первая строка  содержит число N – число указаний (1≤N≤40). Последующие N строк содержат сами указания – номер направления (целое число от 1 до 8) и количество шагов (целое число от 1 до 1000). Числа разделены пробелами.
Формат выходных данных
    Выведите координаты X и Y точки (два вещественных числа, разделённые пробелом), где зарыт клад, считая, что ось Ox направлена на восток, а ось Oy – на север. В начале кладоискатель должен стоять в начале координат. Координаты необходимо вывести с погрешностью не более 10-3.
 

Примеры
Входные данные Выходные данные
1 6
1 3
3 1
1 1
3 3
5 2
7 1
3.000 2.000
2 1
8 10
-7.071 7.071

ID 38432. Целые точки
Темы: Элементарная геометрия    НОД и алгоритм Евклида   

Многоугольник (не обязательно выпуклый) на плоскости задан координатами своих вершин. Требуется подсчитать количество точек с целочисленными координатами, лежащих внутри него (но не на его границе).

Формат входных данных
    В первой строке содержится N (3 ≤N ≤1000) – число вершин многоуголь¬ника. В последующих N строках идут координаты (Xi, Yi) вершин многоугольника в порядке обхода по часовой стрелке. Xi и Yi - целые числа, по модулю не превосходящие 1000000.

Формат выходных данных
В выходной файл вывести одно число – искомое число точек.

Примеры
Входные данные Выходные данные
1 4
-1 -1
-1 1
1 1
1 -1
1
2 3
0 0
0 2
2 0
 
0

ID 38551. Параллелограмм
Темы: Элементарная геометрия   

На уроке геометрии семиклассники Вася и Петя узнали, что такое параллелограмм. На перемене после урока они стали играть в игру: Петя называл координаты четырех точек в произвольном порядке, а Вася должен был ответить, являются ли эти точки вершинами параллелограмма.

Вася, если честно, не очень понял тему про параллелограммы, и ему требуется программа, умеющая правильно отвечать на Петины вопросы.

Напомним, что параллелограммом называется невырожденный четырехугольник, противоположные стороны которого параллельны.

Входные данные
В первой строке входного файла записано целое число N (1 ≤ N ≤ 10) - количество заданных Петей вопросов. Каждая из N последующих строк содержит описание четырех точек - четыре пары целых чисел X и Y (−100 ≤ X ≤ 100, −100 ≤ Y ≤ 100), обозначающих координаты точки.

Выходные данные
Для каждого из вопросов определите, образуют ли данные точки параллелограмм. Если они образуют параллелограмм, то выведите номера этих точек в одной строке через пробел в порядке обхода параллелограмма. Начинать обход можно с любой из вершин. Если они не образуют параллелограмм, выведите в этой строке одно число 0. Ответ на каждый из запросов должен быть в отдельной строке.
 

Примеры
Входные данные Выходные данные
1 3
1 1 4 2 3 0 2 3
1 1 5 2 2 3 3 0
0 0 5 1 6 3 1 2
1 3 2 4
0
1 2 3 4

ID 38652. Уравнение прямой
Темы: Элементарная геометрия   

Входные данные
Четыре числа – координаты двух различных точек на прямой.

Выходные данные
Три числа – коэффициенты A, B и C уравнения этой прямой.


Примеры
Входные данные Выходные данные
1 1 0 2 1 1 -1 -1

ID 38657. Уравнение прямой - 2
Темы: Элементарная геометрия   

Входные данные
Четыре числа – координаты точки на прямой и координаты вектора нормали к этой прямой.

Выходные данные
Три числа – коэффициенты A, B и C уравнения этой прямой.
 

Примеры
Входные данные Выходные данные
1 0 0 1 1 1 1 0

ID 38658. Принадлежность точки прямой
Темы: Элементарная геометрия   

Входные данные
Пять чисел – координаты точки и коэффициенты A, B и C уравнения прямой.

Выходные данные
Одна строка “YES”, если точка принадлежит прямой, и “NO” в противном случае.


Примеры
Входные данные Выходные данные
1 8 7 2 -3 5 YES

ID 38659. Расстояние от точки до прямой
Темы: Элементарная геометрия   

Входные данные
Пять чисел – координаты точки и коэффициенты A, B и C уравнения прямой.

Выходные данные
Одно число – расстояние от точки до прямой.
 

Примеры
Входные данные Выходные данные
1 1 5 0 -4 8 3.00000

ID 38660. Расстояние от точки до луча
Темы: Элементарная геометрия   

Входные данные
Шесть чисел – координаты точки и координаты начала и конца вектора.

Выходные данные
Одно число – расстояние от точки до луча, определяемого вектором.
 

Примеры
Входные данные Выходные данные
1 2 3 0 0 4 0 3.00000
2 -1 1 0 0 4 0 1.41421

ID 38661. Расстояние от точки до отрезка
Темы: Элементарная геометрия   

Входные данные
Шесть чисел – координаты точки и координаты концов отрезка.

Выходные данные
Одно число – расстояние от точки до отрезка.
 

Примеры
Входные данные Выходные данные
1 0 0 0 0 4 0 0.00000
2 4 0 0 0 4 0 0.00000

ID 38662. Пересечение отрезков
Темы: Элементарная геометрия   

Входные данные
Восемь чисел – координаты концов двух отрезков.

Выходные данные
Одна строка “YES”, если отрезки имеют общие точки, и “NO” в противном случае.
 

Примеры
Входные данные Выходные данные
1 1 2 1 2
1 2 1 2
YES
2 3 3 5 6
5 6 3 3
YES

ID 38663. Пересечение двух прямых
Темы: Элементарная геометрия   

Входные данные
Шесть чисел – коэффициенты A, B и C нормального уравнения двух различных непараллельных прямых (сначала для одной прямой, затем для другой).

Выходные данные
Два числа – координаты точки их пересечения.

Примеры
Входные данные Выходные данные
1 4 -4 0 0 -3 6 2.00000 2.00000

ID 38664. Биссектриса
Темы: Элементарная геометрия   

Входные данные
Шесть чисел – координаты точек X, Y и Z.

Выходные данные
Три числа – коэффициенты уравнения биссектрисы угла YXZ.


Примеры
Входные данные Выходные данные
1 0 0 1 0 0 1 1.000000 -1.000000 0.000000
2 0 0 1 3 1 -3 0.000000 -0.632456 0.000000

ID 38665. Касательная к окружности
Темы: Элементарная геометрия   

Входные данные
Пять чисел – координаты центра и радиус окружности, координаты точки.

Выходные данные
В первой строке одно число K, равное количеству точек пересечения касательных к окружности из заданной точки с самой окружностью. Далее в K строках координаты самих точек.
 

Примеры
Входные данные Выходные данные
1 2 2 2 2 5 2
0.50929 3.33333
3.49071 3.33333

ID 38669. Окружность и прямая
Темы: Элементарная геометрия   

Входные данные
Шесть чисел – координаты центра и радиус окружности и коэффициенты A, B и C нормального уравнения прямой.

Выходные данные
В первой строке одно число K, равное количеству точек пересечения прямой с окружностью. Далее в K строках координаты самих точек.
 

Примеры
Входные данные Выходные данные
1 2 3 1 1 -1 0 2
3.00000 3.00000
2.00000 2.00000

ID 38672. Две окружности
Темы: Элементарная геометрия   

Входные данные
Шесть чисел – координаты центра и радиусы двух окружностей.

Выходные данные
В случае, если количество общих точек окружностей конечно, в первой строке вывести одно число K, равное этому количеству, далее в K строках координаты самих точек. Если указанных точек бесконечно много, вывести единственное число “3”.
 

Примеры
Входные данные Выходные данные
1 3 4 5 11 4 2 0
2 3 4 5 9 4 2 2
7.75000 5.56125
7.75000 2.43875

ID 38673. Длина дуги
Темы: Элементарная геометрия   

Входные данные
Семь чисел – координаты центра и радиус окружности (возможно, вырожденной) и вещественные координаты двух точек на ней, с точностью до пятого знака после запятой.

Выходные данные
Одно число – длина меньшей дуги окружности, заключённой между указанными точками.
 

Примеры
Входные данные Выходные данные
1 0 0 1 0 1 1 0 1.57080

ID 38689. Сортировка точек
Темы: Структуры    Использование сортировки    Элементарная геометрия   

Выведите все исходные точки в порядке возрастания их расстояний от начала координат.

Создайте структуру Point и сохраните исходные данные в массиве структур Point.

Входные данные
Программа получает на вход набор точек на плоскости. Сначала задано количество точек n, затем идет последовательность из n строк, каждая из которых содержит два числа: координаты точки. Величина n не превосходит 100, все исходные координаты – целые числа, не превосходящие 103.

Выходные данные
Необходимо вывести  все исходные точки в порядке возрастания их расстояний от начала координат. Программа выводит только координаты точек, их количество выводить не надо.

 Примеры

Входные данные Выходные данные
1 2
1 2
2 3
1 2
2 3

ID 39818. Поиск вершины по центру вписанной окружности (I, инцентр)
Темы: Бинарный поиск    Элементарная геометрия    Вычислительная геометрия   

Точка I – центр вписанной окружности треугольника АВС (инцентр).
Найдите абсциссу вершины C (координату x), если известно:
- координаты точек A и B;
- координата точки D, лежащей на прямой ВС;
- точка лежит на прямой ED (координаты точки E известны);
- для координат выполняются условия: Ax<Cx<Bx;
Входные данные: в 1-й строке вводятся значения Ax, Ay, Bx, By Dx,Dy, Ex, Ey – координаты точек A, B, D, E
Все значения целые числа в интервале [-1000;1000].
Выходные данные: ответ на задание с точностью не менее 10-5.
Пример:

Входные данные Выходные данные
1 1 7 3 8 1 1 7 4.348182
-1 3 9 1 8 -1 -1 1  6.500895

ID 39795. Поиск вершины по центру описанной окружности (O)
Темы: Бинарный поиск    Элементарная геометрия    Вычислительная геометрия   

Точка O – центр описанной окружности треугольника АВС.
Найдите абсциссу вершины C (координату x), если известно:
- координаты точек A и B;
- координата точки D, лежащей на прямой ВС;
- точка лежит на прямой ED (координаты точки E известны);
- для координат выполняются условия: Ax<Cx<Bx;
Входные данные: в 1-й строке вводятся значения Ax, Ay, Bx, By Dx,Dy, Ex, Ey – координаты точек A, B, D, E
Все значения целые числа в интервале [-1000;1000].
Выходные данные: ответ на задание с точностью не менее 10-5.
Пример:

Входные данные Выходные данные
1 1 6 3 7 1 0 6  3.784
1 2 5 1 6 -1 1 5 3.207692

ID 39774. Поиск вершины по ортоцентру (H)
Темы: Бинарный поиск    Элементарная геометрия    Вычислительная геометрия   

Точка H – центр пересечения высот треугольника (ортоцентр) АВС.
Найдите абсциссу вершины C (координату x), если известно:
- координаты точек A и B;
- координата точки D, лежащей на прямой ВС;
- точка лежит на прямой ED (координаты точки E известны);
- для координат выполняются условия: Ax<Cx<Bx;
Входные данные: в 1-й строке вводятся значения Ax, Ay, Bx, By Dx,Dy, Ex, Ey – координаты точек A, B, D, E
Все значения целые числа в интервале [-1000;1000].
Выходные данные: ответ на задание с точностью не менее 10-5.
Пример:

Входные данные Выходные данные
1 1 6 3 9 1 1 5 2.454545
1 2 5 1 6 -1 1 5 3.196078

ID 39757. Треугольник. Поиск вершины по положению центроида
Темы: Бинарный поиск    Элементарная геометрия    Вычислительная геометрия   

Точка G – центр пересечения медиан треугольника (центроид) АВС.
Найдите абсциссу вершины C (координату x), если известно:
- координаты точек A и B;

- координата точки D, лежащей на прямой ВС;
- точка G лежит на прямой ED (координаты точки E известны);
- для координат выполняются условия: Ax<Cx<Bx;
Входные данные: в 1-й строке вводятся значения Ax, Ay, Bx, By Dx,Dy, Ex, Ey – координаты точек A, B, D

Все значения целые числа в интервале [-1000;1000].

Выходные данные: ответ на задание с точностью не менее 10-5.
Пример:

Входные данные Выходные данные
2 2 7 1 6 3 3 4 3.6
0 0 5 1 3 4 0 0 1.0

ID 42463. Длина отрезка
Темы: Элементарная геометрия    Информатика   

Длина отрезка

Даны четыре действительных числа: x1y1, x2, y2. Напишите программу, вычисляющую расстояние между точками с координатами (x1,y1) и (x2,y2).

Входные данные.
Четыре действительных числа. 

Выходные данные. 
Результат работы программы. Точность вычисления не менее 5 знаков.

Примеры
 

входные данные выходные данные
0
0
1

1
1.41421

ID 42464. Принадлежит ли точка квадрату-1
Темы: Элементарная геометрия    Условный оператор   

Принадлежит ли точка квадрату - 1

Даны два действительных числа x и y. Проверьте, принадлежит ли точка с координатами (x,y) заштрихованному квадрату (включая его границу).
Если точка принадлежит квадрату, выведите слово YES, иначе выведите слово NO. На рисунке сетка проведена с шагом 1.

Входные данные.
Два действительных числа.

Выходные данные.
Ответ на задачу.

Примеры

входные данные выходные данные
0
0
YES
3
-7
NO

ID 42465. Принадлежит ли точка квадрату - 2
Темы: Элементарная геометрия    Условный оператор   

Принадлежит ли точка квадрату - 2

Даны два действительных числа x и y. Проверьте, принадлежит ли точка с координатами (x,y) заштрихованному квадрату (включая его границу).
Если точка принадлежит квадрату, выведите слово YES, иначе выведите слово NO. На рисунке сетка проведена с шагом 1.

Входные данные.
Два действительных числа.

Выходные данные.
Ответ на задачу.

Примеры

входные данные выходные данные
0
0
YES
1
1
NO

ID 42466. Принадлежит ли точка кругу
Темы: Элементарная геометрия    Условный оператор   

Принадлежит ли точка кругу

Даны пять действительных чисел: x, y, xc, yc, r.
Проверьте, принадлежит ли точка (x,y) кругу с центром (xc,yc) и радиусом r.
Если точка принадлежит кругу, выведите слово YES, иначе выведите слово NO.
 

Входные данные.
Два действительных числа.

Выходные данные.
Ответ на задачу.

Примеры

входные данные выходные данные
0.5
0.5
0
0
1
YES
0.5
0.5
1
1
0.1
NO

ID 42467. Принадлежит ли точка области
Темы: Элементарная геометрия    Условный оператор   

Принадлежит ли точка области

Даны два действительных числа x и y. Проверьте, принадлежит ли точка с координатами (x,y)  данной закрашенной области:

Если точка принадлежит области (область включает границы), выведите слово YES, иначе выведите слово NO.
На рисунке сетка проведена с шагом 1.
 

Входные данные.
Два действительных числа.

Выходные данные.
Ответ на задачу.

Примеры

входные данные выходные данные
-2
2
YES
-2
1
NO

ID 42491. Принадлежность точки отрезку
Темы: Элементарная геометрия   

Принадлежность точки отрезку
Входные данные
Вводятся шесть чисел - координаты точки и координаты концов отрезка.
Выходные данные
Выведите одну строку "YES", если точка принадлежит отрезку, и "NO" в противном случае.

Примеры

входные данные выходные данные
4 0 4 2 4 5
NO
4 2 4 2 4 5
YES

ID 42492. Угол между векторами
Темы: Элементарная геометрия   

Угол между векторами

Входные данные
Четыре числа - координаты двух векторов. Все числа целые, по модулю не превышающие 1000.

Выходные данные
Одно число - величина неориентированного угла между ними с точностью до пятого знака после запятой.

 

Примеры

входные данные выходные данные
2 1 1 2
0.64350
-2 1 -1 2 
0.64350

ID 42493. Полярное расстояние
Темы: Элементарная геометрия   

Полярное расстояние

Заданы полярные координаты двух точек на плоскости. Требуется найти расстояние между этими точками.

Входные данные
Вводятся 4 числа в две строки.
Числа первой строки два задают радиус и полярный угол первой точки,
числа второй строки  - полярные координаты второй.
Обратите внимание: все углы задаются в градусах.
Выходные данные
Выведите расстояние между точками с точностью не меньше, чем в пять знаков.

Примеры

входные данные выходные данные
3 90
4 180
5.0
5 10 
5 190
 
10.0

ID 42494. Пересекаются ли два луча
Темы: Элементарная геометрия   

Пересекаются ли два луча

Даны два луча: AB и CD (A и C - вершины лучей, B и D лежат на лучах). Проверьте, пересекаются ли они.

Входные данные
Программа получает на вход координаты точек ABCD
Все координаты - целые, не превосходят 100 по модулю.
Координаты каждой точки вводятся в отдельной строке.

Выходные данные
Программа должна вывести слово YES или NO

Примеры

входные данные выходные данные
0 1
1 2
1 -1
1 0
YES
0 0 
1 0
0 1
1 2
 NO

ID 42495. Точка пересечения медиан
Темы: Вычислительная геометрия    Элементарная геометрия    Многоугольники. Выпуклые оболочки   

Точка пересечения медиан

Входные данные
Даны координаты трех точек, не лежащих на одной прямой: X1Y1X2Y2X3Y3.
Все числа целые, по модулю не превосходят 1000.

Выходные данные
Выведите два числа XY, задающие координаты точки пересечения медиан в треугольнике, образованном  исходными точками.
Числа в ответе должны быть выданы с точностью не менее 5 знаков.

Примеры:
Входные данные Выходные данные
1 1 2 4 3 2
2.00000 2.33333
2 4 3 2 1 1 
2.00000 2.33333

 

ID 42496. Точка пересечения высот
Темы: Вычислительная геометрия    Элементарная геометрия    Многоугольники. Выпуклые оболочки   

Точка пересечения высот

Входные данные
Даны координаты трех точек, не лежащих на одной прямой: X1Y1X2Y2X3Y3.
Все числа целые, по модулю не превосходят 1000.

Выходные данные
Выведите два числа XY, задающие координаты точки пересечения высот в треугольнике, образованном  исходными точками.
Числа в ответе должны быть выданы с точностью не менее 5 знаков.

Примеры:
Входные данные Выходные данные
1 1 2 4 3 2
3.0 2.0
10 0 12 2 14 5
 37.0 -18.0

 

ID 42497. Вписанная окружность
Темы: Вычислительная геометрия    Элементарная геометрия    Многоугольники. Выпуклые оболочки   

Вписанная окружность

Входные данные
Даны координаты трех точек, не лежащих на одной прямой: X1Y1X2Y2X3Y3.
Все числа целые, по модулю не превосходят 1000.

Выходные данные
Выведите два числа XY, R, задающие координаты центра и радиус окружности, вписанной в треугольник, образованном  исходными точками.
Числа в ответе должны быть выданы с точностью не менее 5 знаков.

Примеры:
Входные данные Выходные данные
1 1 2 4 3 2
2.12132 2.292893 0.65493
10 0 12 2 14 5
 11.8789  2.099258  0.1557984


 
 

ID 42498. Описанная окружность
Темы: Вычислительная геометрия    Элементарная геометрия    Многоугольники. Выпуклые оболочки   

Описанная окружность

Входные данные
Даны координаты трех точек, не лежащих на одной прямой: X1Y1X2Y2X3Y3.
Все числа целые, по модулю не превосходят 1000.

Выходные данные
Выведите два числа XY, R, задающие координаты центра и радиус окружности, описанной в треугольник, образованном  исходными точками.
Числа в ответе должны быть выданы с точностью не менее 5 знаков.

Примеры:
Входные данные Выходные данные
1 1 2 4 3 2
1.50000 2.50000 1.58114
10 0 12 2 14 5
-0.50000 12.50000 16.32483


 

 
 

ID 42499. Точка пересечения двух прямых
Темы: Элементарная геометрия    Вычислительная геометрия   

Точка пересечения прямых

На плоскости даны две прямые. Каждая прямая задается парой точек, через которые она проходит.
Требуется установить, пересекаются ли эти прямые, и найти координаты точки пересечения.
Входные данные
Вводятся сначала координаты двух различных точек, через которые проходит первая прямая,
а затем - координаты еще двух различных (но, быть может, совпадающих с первыми двумя) точек,
через которые проходит вторая прямая. Координаты каждой точки - целые числа, по модулю не превышающие 1000.
Выходные данные
Если прямые не пересекаются, выведите одно число 0. Если прямые совпадают, выведите 2.
Если прямые пересекаются ровно в одной точке, то выведите сначала число 1,
а затем два вещественных числа - координаты точки пересечения.
Координаты точки пересечения необходимо определить с точностью не менее 5 знаков.

Примеры

входные данные выходные данные
0 0 1 1
1 0 -1 2
1  0.50  0.50
1 2 3 4
0 3 4 7
0
1 2 3 4
3 4 1 2
2

ID 42501. Расстояние от точки до прямой
Темы: Элементарная геометрия    Вычислительная геометрия   

Расстояние от точки до прямой

Определите расстояние от точки до прямой.
Входные данные
Пять чисел – координаты точки и коэффициенты A, B и C уравнения прямой.
Все числа целые и по модулю не превосходят 10000.
Выходные данные
Одно число – расстояние от точки до прямой. Точность вычисления не менее 5 знаков.

Примеры

входные данные выходные данные
1 5 0 -4 8
3.0
1 5 -4 0 8 
1.0

ID 42502. Перпендикулярная прямая
Темы: Элементарная геометрия   

Перпендикулярная прямая

По уравнению прямой и координатам некоторой точки (точка может быть как на прямой, так и вне ее)
определить уравнение прямой, проходящей через заданную точку и перпендикулярную заданой прямой.
Входные данные
Пять чисел - коэффициенты AB и C уравнения прямой и координаты некоторой точки XY (точка может быть как на прямой, так и вне ее).
Все числа целые, по модулю не превосходят 10000.
Выходные данные
Выведите три числа - коэффициенты AB и C уравнения прямой, перпендикулярной заданной и проходящей через заданную точку.
Числа в ответе должны быть выданы с точностью не менее 5 знаков.

Примеры

входные данные выходные данные
0 -4 8 5 0
-4.0 0.0 20.0
-4 0 8 5 0 
0.0 4.0 0.0

ID 42503. Параллельная прямая
Темы: Элементарная геометрия   

Параллельная прямая

Задана прямая и неотрицательная величина R. Определите уравнения любой из прямых, параллельных заданной и лежащей от неё на расстоянии R.
Входные данные
Четыре числа - коэффициенты AB и C уравнения прямой и величина R.
Все числа целые, по модулю не превосходят 10000.
Выходные данные
Выведите три числа - коэффициенты AB и C уравнения любой из прямых,
параллельных заданной и лежащих от неё на расстоянии R. Все значения должны быть вычислены с точностью не меннее 5 знаков.

Примеры

входные данные выходные данные
0 -4 8 5
0 -4 -12.0
 
 

ID 42500. Положение точек вне прямой
Темы: Элементарная геометрия   

Положение точек вне прямой
Определите положение двух точек относительно заданной прямой.
Известно, что точки на прямой не лежат.

Входные данные
Семь чисел - координаты двух точек вне прямой и коэффициенты A, B и C её уравнения.
Все числа целые и по абсолютному значению не превосходят 10000
Выходные данные
Выведите одну строку: "YES", если точки лежат по одну сторону прямой, и "NO" в противном случае.

Примеры

входные данные выходные данные
0 1 1 0 0 -4 8
YES
0 0 3 3 0 -4 8
NO