Skip to content

mo3ayka/The-separation-of-figures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

The-separation-of-figures

Задача:

После работы Оля и Толя решили вместе сходить в тир. После прохождения вводного инструктажа и получения оружия они оказались на позициях для стрельбы, а напротив них находятся n мишеней. Все мишени можно считать фигурами, нанесёнными на бесконечную плоскость, при этом каждая мишень является кругом или прямоугольником, мишени могут накладываться и пересекаться произвольным образом. Перед тем как начать стрельбу, Оля и Толя хотят убедиться, что они смогут однозначно идентифицировать результаты своих выстрелов. Для этого они договорились провести прямую, которая поделит плоскость с мишенями на две части. Однако, чтобы никому не было обидно, они хотят провести прямую таким образом, чтобы каждая мишень была поделена ровно пополам, то есть для каждого круга и каждого прямоугольника должно быть верно, что прямая делит его на две фигуры равной площади. Когда Оля и Толя наконец закончили прорабатывать все условия разделения мишеней на две части, они начали сомневаться, что провести такую прямую вообще возможно, и просят вас ответить на этот вопрос.

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

В первой строке входных данных записано целое число n(1≤n≤100 000) — количество мишеней. Каждая из последующих n строк содержит целое число ti(0≤ti≤1), обозначающее тип мишени. Если ti=0, то мишень является кругом и далее следуют три целых числа ri, xi и yi, определяющие радиус и координаты центра круга соответственно (1≤ri≤1000, −10000≤xi,yi≤10000). Если же ti=1, то мишень является прямоугольником, который затем определяют восемь целых чисел x1,i, y1,i, x2,i, y2,i, x3,i, y3,i, x4,i, y4,i — координаты всех четырёх вершин (−10000≤xj,i,yj,i≤10000), перечисленных в порядке обхода по часовой стрелке или против часовой стрелки. Гарантируется, что данные четыре вершины образуют прямоугольник ненулевой площади.

Вывод

Если существует прямая, которая поделит каждый из имеющихся кругов и прямоугольников на две части одинаковой площади, выведите “Yes”. В противном случае выведите “No”.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages