Главная » Файлы » Математика » Нестандартные задачи по Математике |
Раздел царства.
25.10.2013, 23:24 | |
Раздел царства. Царство царя Гороха представляет собой выпуклый N-угольник, внутри которого расположены K селений. Царь решил завещать двум своим сыновьям по полцарства, одинаковые по площади и с равным количеством селений. Для этого он требует разделить царство одной прямолинейной границей. Напишите программу, строящую границу согласно царской воле. Если граница проходит через селение, то оно может быть либо отнесено к одному из полуцарств, либо разделено на два селения, которые будут отнесены к разным полуцарствам (при нечетном K граница, естественно, должна разделить какое-то из селений). Первая строка входного файла содержит количество вершин многоугольника N (3 ≤N ≤50). В следующих N строках заданы координаты вершин многоугольника, перечисленные в порядке обхода контура по часовой стрелке. В (N+2)-ой строке указано количество селений K (0 ≤ K≤ 100), а в последующих K строках заданы координаты селений. Все координаты — целые числа, не превосходящие по модулю 106. Размерами селений следует пренебречь. В выходной файл нужно вывести координаты любых двух различных точек, через которые следует провести границу. Координаты должны быть выведены с 6 знаками после десятичной точки. Пример входного файла Решение. Выберем произвольную точку на границе царства. Для поиска прямой, проходящей через эту точку и делящей царство на две равные пока только по площади части, зафиксируем две другие точки границы, так, что прямая проведенная через выбранную и первую из фиксированных точек делит царство на две неравные части, причем левая (или нижняя для горизонтальной прямой) часть меньше правой (верхней). Прямая же, проходящая через выбранную точку и вторую из фиксированных, делит царство в обратном соотношении. Тогда искомая точка находится между двумя фиксированными и ее можно искать методом деления пополам. Теперь следует подсчитать количество селений в каждой из уже равных по площади частей. Если оно различно, то на границе нужно выбрать еще одну точку, при делении царства с помощью которой количество селений в половинах также будет соотноситься по-иному. Теперь можно применить метод деления пополам для правильного выбора опорной точки. | |
Просмотров: 527 | Загрузок: 0 | |
Всего комментариев: 0 | |
Категории раздела
Математика [249] |
Алгебра [136] |
Геометрия [416] |
Тригонометрия [109] |
Задачи по теории вероятности [60] |
Нестандартные задачи по Математике [232] |
Задачи по комбинаторике [168] |
Элементы математического анализа [51] |
Смеси,Растворы , Сплавы.Проценты , Прогрессии ,Пропорции,Движение и работа [133] |
Решение уравнений [190] |
Функция и Графики [110] |
Задачи на доказательство [151] |
Задачи с параметрами [140] |
Kоординаты и векторы [7] |
Решение неравенств [229] |
Разные решения одной задачи_ Одно решение разных задач [56] |
Контрольные задачи по темам [12] |
Формулы ,Таблицы, Правила, Теоремы [151] |
Тесты [72] |
Программирование [27] |
Высшая Математика [77] |
Теория графов [47] |
Контрольные и самостоятельные работы пр Геометрии [344] |
Друзья сайта