Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Ещё задачка... (http://forum.oszone.net/showthread.php?t=30895)

noname00.pas 28-11-2001 22:30 210734

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

ПС. Я же не прошу вас публиковать тексты программ, просто напишите, как нужно решать ;)

Apis.NET 29-11-2001 03:12 210735

noname00.pas Писец ты сам то понял что сказал7 Ты с азов начни!

noname00.pas 29-11-2001 12:12 210736

Apis.NET
Куда же проще то? Это вобще на геометрию задачка :)

vasketsov 29-11-2001 13:54 210737

1. По многоугольнику строится его минимальная выпуклая оболочка (ВО) (единственная). Дальше вся работа с ней.
2. Описываем вокруг каждой вершины ВО окружность радиуса L.
3. Проводим попарно внешние касательные для соседних окружностей
4. Считаем длину исходя из точек касания.
5. Идем за пивом.

noname00.pas 29-11-2001 14:17 210738

vasketsov
Верно... А можно ещё проще. Периметр выпуклой оболочки + 2*pi*L
;)

П.С. Это была задача D с прошедшего вчера полуфинала ACM (NEERC) ИМХО самая простая...

Apis.NET
Нужно ли объяснять, как строится выпуклая оболочка?

vasketsov 29-11-2001 14:57 210739

noname00.pas
>>Верно... А можно ещё проще. Периметр выпуклой оболочки + 2*pi*L
Да, не сообразил :)))

Apis.NET 30-11-2001 03:34 210740

noname00.pas Человеку который считает что самое большое счастье в его жизни это отмена экзамена по геометрии в 7 классе? Думаю что надо.

noname00.pas 30-11-2001 03:47 210741

Apis.NET
Читай тему "Построение выпуклой оболочки методом Джарвиса"

Apis.NET 02-12-2001 01:52 210742

Ладно, будет время прочту.


Время: 08:53.

Время: 08:53.
© OSzone.net 2001-