ЗАДАЧИ
problems.ru
О проекте | Об авторах | Справочник
Каталог по темам | по источникам |
К задаче N

Проект МЦНМО
при участии
школы 57
Фильтр
Сложность с по   Класс с по  
Выбрана 1 задача
Версия для печати
Убрать все задачи

В картинной галерее, имеющей форму N-угольника, расположено M люстр, которые мы будем считать точечными источниками света. Точка стены галереи называется освещенной, если из нее видна хотя бы одна из люстр. Неосвещенным участком будем называть максимальное связное множество точек стены галереи, ни одна из которых не освещена (участок может содержать углы галереи). Напишите программу, определяющую все неосвещенные участки.

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

Первая строка входного файла содержит два целых числа N и M (1 ≤ N, M ≤ 30). В каждой из следующих N строк записаны координаты очередного угла галереи. Углы перечислены в порядке обхода стены по часовой стрелке. Далее идут M строк, каждая из которых содержит координаты очередной из люстр. Все координаты являются вещественными числами и разделяются пробелом.

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

В первую строку выходного файла выведите количество неосвещенных участков S. Каждая из следующих S строк должна содержать описание очередного из участков в виде тройки чисел, разделенных пробелом. Первые два числа определяют координаты начальной точки участка, третье – его длину. (Участок должен продолжаться на указанную длину в направлении обхода стены по часовой стрелке. Никакие два участка не должны иметь общих точек.) Числа, определяющие участок, должны быть выведены не менее чем с 3 верными значащими цифрами.

Пример входного файла

5 1
0 0
0 5
4 5
2 3
5 0
3.0 1.0

Пример выходного файла

1
1 5 5.82843

   Решение

Задачи

Страница: << 25 26 27 28 29 30 31 >> [Всего задач: 277]      



Задача 102933

 [Прямоугольники ]
Темы:   [ Вычислительная геометрия (прочее) ]
[ Очередь с приоритетами ]
Сложность: 3

На ось Ox плоскости Oxy положили N прямоугольников. Требуется найти координаты вершин ломаной, огибающей это множество прямоугольников сверху (см. рис.).



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

Первая строка входного файла содержит целое число N (1 ≤ N ≤ 100). Далее следуют N строк, в каждой из которых записана тройка вещественных чисел, описывающих очередной из прямоугольников. Первое из них задает абсциссу левого нижнего угла прямоугольника, а остальные два – его длину и высоту.

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

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

Пример входного файла

2
0 4 2
2 4 5

Пример выходного файла

6
0 0
0 2
2 2
2 5
6 5
6 0
Прислать комментарий     Решение


Задача 102934

 [Картинная галерея ]
Тема:   [ Прямая и отрезок ]
Сложность: 3

В картинной галерее, имеющей форму N-угольника, расположено M люстр, которые мы будем считать точечными источниками света. Точка стены галереи называется освещенной, если из нее видна хотя бы одна из люстр. Неосвещенным участком будем называть максимальное связное множество точек стены галереи, ни одна из которых не освещена (участок может содержать углы галереи). Напишите программу, определяющую все неосвещенные участки.

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

Первая строка входного файла содержит два целых числа N и M (1 ≤ N, M ≤ 30). В каждой из следующих N строк записаны координаты очередного угла галереи. Углы перечислены в порядке обхода стены по часовой стрелке. Далее идут M строк, каждая из которых содержит координаты очередной из люстр. Все координаты являются вещественными числами и разделяются пробелом.

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

В первую строку выходного файла выведите количество неосвещенных участков S. Каждая из следующих S строк должна содержать описание очередного из участков в виде тройки чисел, разделенных пробелом. Первые два числа определяют координаты начальной точки участка, третье – его длину. (Участок должен продолжаться на указанную длину в направлении обхода стены по часовой стрелке. Никакие два участка не должны иметь общих точек.) Числа, определяющие участок, должны быть выведены не менее чем с 3 верными значащими цифрами.

Пример входного файла

5 1
0 0
0 5
4 5
2 3
5 0
3.0 1.0

Пример выходного файла

1
1 5 5.82843
Прислать комментарий     Решение


Задача 102949

 [Миротворцы ]
Тема:   [ Вычислительная геометрия (прочее) ]
Сложность: 3

N миротворцев из российского корпуса KFOR десантировались в окрестности аэропорта Слатина. Точка приземления каждого миротворца задается парой целочисленных координат (x, y). За один шаг каждый из десантников может переместиться на соседнюю целочисленную позицию вдоль оси X или Y (т.е. одна из его координат меняется на 1 по абсолютной величине). Шаги делаются по очереди, никакие два миротворца при этом не могут находиться в одной позиции одновременно. 

Десантники хотят выстроиться в шеренгу – линию, параллельную одной из осей координат, в которой они стояли бы в подряд идущих целочисленных позициях. Напишите программу, которая определяет минимальное суммарное число шагов, необходимое миротворцам для того, чтобы образовать шеренгу.

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

Первая строка входного файла содержит целое число N – количество миротворцев (1 ≤ N ≤ 10000). Каждая из последующих N строк содержит
координаты десантника – два целых числа из диапазона [-32768, 32767], разделенные пробелом.

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

Выведите в выходной файл искомое количество шагов.

Пример входного файла

3
-1 -1
0 0
1 1

Пример выходного файла

2
Прислать комментарий     Решение


Задача 98790

 [Разложение на слагаемые]
Тема:   [ Генерация объектов любым методом ]
Сложность: 3

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

Прислать комментарий     Решение

Задача 102939

 [SOS ]
Тема:   [ Вычислительная геометрия (прочее) ]
Сложность: 3

В океане в точке с координатами (X, Y) потерпел крушение корабль. Недалеко от места катастрофы находится остров, имеющий форму N-угольника (не обязательно выпуклого). Спасшиеся после кораблекрушения пассажиры оказались в спасательной шлюпке, которая может двигаться относительно воды в любом направлении со скоростью, не превосходящей V. В процессе движения шлюпка может менять как направление, так и величину своей скорости.

В океане имеется постоянное течение, вектор скорости которого – (VTx, VTy). Тем самым, вектор скорости шлюпки относительно земли определяется как сумма вектора скорости течения (VTx, VTy) и вектора скорости шлюпки относительно воды (Vx, Vy).

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

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

Входной файл содержит (в указанном порядке) следующие данные: координаты (X, Y) места крушения, количество вершин острова N (3 ≤ N ≤ 50), координаты вершин острова, заданные в порядке обхода острова по часовой стрелке (2N чисел), максимальную скорость спасательной шлюпки V (V > 0) и вектор скорости течения (VTx, VTy). Все числа во входном файле, кроме N, являются вещественными и разделяются пробелами и/или символами перевода строки.

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

Выведите в выходной файл искомое время не менее чем с 6 верными значащими цифрами. Если шлюпка до острова доплыть не сможет, выходной файл должен содержать сообщение «добраться невозможно». 

Пример входного файла

4 3
3
0 0 0 3 3 0
2 1 1

Пример выходного файла

4.828427
Прислать комментарий     Решение


Страница: << 25 26 27 28 29 30 31 >> [Всего задач: 277]      



© 2004-... МЦНМО (о копирайте)
Пишите нам

Проект осуществляется при поддержке Департамента образования г.Москвы и ФЦП "Кадры" .