ЗАДАЧИ
problems.ru |
О проекте
|
Об авторах
|
Справочник
Каталог по темам | по источникам | |
|
Тема:
Информатика
Подтемы:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Версия для печати
Убрать все задачи Два многоугольника на плоскости заданы координатами своих вершин. Требуется вычислить площадь пересечения этих многоугольников, то есть сумму площадей тех кусков, которые образуются при их пересечении и принадлежат каждому из них. При этом вы можете предполагать, что: А) Многоугольники выпуклые, а координаты их вершин даны в произвольном порядке. Б) Хотя бы один из многоугольников невыпуклый, но известно, что у каждого из многоугольников не более одного угла, большего 180 градусов, а координаты вершин даны в порядке обхода по часовой стрелке. Ваша программа по входным данным должна сама определить, какой из этих двух случаев имеет место. Входные данные Первая строка входного файла содержит целое число N – количество вершин в первом многоугольнике (3 ≤ N ≤ 50). Во второй строке записаны координаты этих вершин. Третья и четвертая строки таким же образом задают второй многоугольник. Координаты всех вершин являются целыми числами из диапазона [-32768, 32767]. Выходные данные Выведите в выходной файл искомую площадь не менее чем с 6 верными значащими цифрами. Пример входного файла 3 0 3 0 -3 -3 0 5 -1 1 2 1 1 0 2 -1 -1 -1 Пример выходного файла 2.0 Решение |
Страница: << 31 32 33 34 35 36 37 >> [Всего задач: 277]
Пояснения для тех, кто плохо учил в школе физику:
Как следствие, получаем следующие формулы:
Входные данные Во входном файле содержатся (в указанном порядке) целое число N (1 ≤ N ≤ 30) и N пар вещественных чисел, задающих координаты точек. Числа разделяются пробелами и/или символами перевода строки. Выходные данные Первая строка выходного файла должна содержать минимально возможное значение суммарной площади. В каждую из следующих K строк запишите тройку номеров вершин, образующих очередной из треугольников. Номера вершин разделяются пробелом. Пример входного файла 6 0 0 1 0 10 0 0 2 12 0 10 1 Пример выходного файла 2 1 2 4 3 5 6
взять число из одного сектора; взять число, равное сумме двух или более чисел в смежных секторах. Из новых чисел составляется наибольшая последовательность подряд идущих чисел, начинающаяся с числа M: (M, M+1, M+2, ..., I). Пример на рисунке показывает, как получить все новые числа от 2 до 21 для приведенных на нем чисел в секторах. Серым цветом выделены суммируемые числа.
А) Многоугольники выпуклые, а координаты их вершин даны в произвольном порядке. Б) Хотя бы один из многоугольников невыпуклый, но известно, что у каждого из многоугольников не более одного угла, большего 180 градусов, а координаты вершин даны в порядке обхода по часовой стрелке. Ваша программа по входным данным должна сама определить, какой из этих двух случаев имеет место. Входные данные Первая строка входного файла содержит целое число N – количество вершин в первом многоугольнике (3 ≤ N ≤ 50). Во второй строке записаны координаты этих вершин. Третья и четвертая строки таким же образом задают второй многоугольник. Координаты всех вершин являются целыми числами из диапазона [-32768, 32767]. Выходные данные Выведите в выходной файл искомую площадь не менее чем с 6 верными значащими цифрами. Пример входного файла 3 0 3 0 -3 -3 0 5 -1 1 2 1 1 0 2 -1 -1 -1 Пример выходного файла 2.0
Входные данные В первой строке входного файла находится целое число N (1 ≤ N ≤ 20). В каждой из последующих N строк записана тройка вещественных чисел, описывающих очередную из окружностей. Первые два числа задают координаты ее центра, третье – радиус. Выходные данные Выведите в выходной файл искомую площадь не менее чем с 6 верными значащими цифрами. Пример входного файла 2 0 0 1 1 1 1 Пример выходного файла 0.570796
Страница: << 31 32 33 34 35 36 37 >> [Всего задач: 277] |
© 2004-...
МЦНМО
(о копирайте)
|
Пишите нам
|