|
|
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
задача: в простой многоугольник вписать круг наибольшего радиуса.. пожалуйсто, если у кого-то есть какие-нибуди идеи помогите!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 10:25 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
буду очень благодарна любой подсказке. ICQ: 251743359 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 10:26 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
уточните что такое простой многоугольник Я всегда думал, что если в многоугольник можно вписать круг, то только 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 10:35 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
LINUXERуточните что такое простой многоугольник Я всегда думал, что если в многоугольник можно вписать круг, то только 1 Простой многоугольник - замкнутая ломаная без самопересечений. Как следствие, в простом многоугольнике нет 'дыр'. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 11:15 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Не смущает ли Вас тот факт, что для вписывания окружности многоугольник как минимум обязан быть выпуклым? Также странна постановка насчет наибольшего радиуса. Если говорить о вписанной окружности, то в обычном геометрическом понимании этого слова она не более чем единственна для каждого многоугольника, наибольшее выбирать просто не из чего. Итого - читайте учебник Погорелова либо уточняйте постановку задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 11:25 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
softwarerНе смущает ли Вас тот факт, что для вписывания окружности многоугольник как минимум обязан быть выпуклым ? Также странна постановка насчет наибольшего радиуса. Если говорить о вписанной окружности, то в обычном геометрическом понимании этого слова она не более чем единственна для каждого многоугольника, наибольшее выбирать просто не из чего. Итого - читайте учебник Погорелова либо уточняйте постановку задачи. Не обязан. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 11:30 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
может под словом "вписать" автор понимает, что круг не должен выходить за многоугольник? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 11:30 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
optimizerможет под словом "вписать" автор понимает, что круг не должен выходить за многоугольник? да наверно это невыпуклость многоугогольника усложняет задачу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 14:40 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
LINUXER optimizerможет под словом "вписать" автор понимает, что круг не должен выходить за многоугольник? да наверно это невыпуклость многоугогольника усложняет задачу в том то вся и проблема что многоугольник может быть любым, всмысле и в виде стрелки и как подкова.проблема в том как найти центр этого круга. и получается, что этот круг в трех точках соприкасается с многоугольником. как же найти радиус? может сделать какойто обход по вершинам?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:08 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
вот оригинал задания: ( на украинском) коло вписане в простий многокутник. В заданий простий N-кутник вписати коло найбільшого радіусу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:10 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
aleks2Не обязан. Обязан. Вписанная окружность обязана касаться каждой из сторон многоугольника, для невыпуклого многоугольника это условие невыполнимо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:32 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
softwarer aleks2Не обязан. Обязан. Вписанная окружность обязана касаться каждой из сторон многоугольника, для невыпуклого многоугольника это условие невыполнимо. имеется ввиду не вписананя окружность, а окружность наибольшего радиуса, находящяяся внутри многоугольника. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:42 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Ктонибудь определение вписанной окружности для произвольного простого многоугольника может дать? Я нашёл 2 : 1) Касается всех сторон.. 2) Касается прямых содержащих стороны и центр находится внутри. 2 вариант для невыпуклого допустим.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:42 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
берем 1 угол, да так, что он обязятельно внутри. и начинаем разростать окружность до тех пор, пока он куда-нибудь не упрется. потом берем следующий угол. все углы - внутренние. аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:43 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklinимеется ввиду не вписананя окружность, а окружность наибольшего радиуса, находящяяся внутри многоугольника. Помоему это только гипотеза :-). Если "имеется ввиду" - то почему не написано так как имеется ввиду?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:44 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
ПалестинецКтонибудь определение вписанной окружности для произвольного простого многоугольника может дать? Я нашёл 2 : 1) Касается всех сторон.. 2) Касается прямых содержащих стороны и центр находится внутри. 2 вариант для невыпуклого допустим.. как найти центр круга? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:46 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklinберем 1 угол, да так, что он обязятельно внутри. и начинаем разростать окружность до тех пор, пока он куда-нибудь не упрется. потом берем следующий угол. все углы - внутренние. аффтопитезь да, но теперь другой вопрос, как это запрограмировать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 15:52 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Neeka[quot Aklin]берем 1 угол, да так, что он обязятельно внутри. и начинаем разростать окружность до тех пор, пока он куда-нибудь не упрется. потом берем следующий угол. все углы - внутренние. аффтопитезь как мне алгоритм такой в прогу загнать? может еще что-то есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 16:01 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
я сразу скажу, что вам нужен будет ну очень неплохой компьютер. т.к. съедать алгоритм будет много премного. далее. возьмем расстояние А = максимально удаленные две точки многоуголника. Для каждой прямой знаем (xa, ya )-(xb, yb) далее. для каждой точки многоулгольника (зная обе линии, коими эта вершина образована, позаботится заранее) берем нашу R = A/2 и D = A. Центр - на биссектриссе. расстояние от вершины до центра можно ввести программно (формулу вывести и ввести). Смотрим для каждой прямой, не пересекает ли прямая окружность. это решается. я думая стоит решать в общем виде, а не перебирать точки. (например задать программное уравнение, или условие, пока не решал как именно ) (кстати, по-моему самый толстый момент). Если пересекает хоть одну, то R = R/2. Если нет, то D = D/2, R = R + D. до определенно малого D. Теперь прикидываем. [кол-во вершин]*[log( точности D )] В принципе не так уж и сложно. а вот программить замудохаца. аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 16:45 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
2Aklin . Если решать ту задачу которую ты решаешь(а не автор). то можно вот так: максимальная окружность содержащаяся в многоугольнике обязана 1) лежать на 3 вершинах с внутренним углом > 90 OR 2) касаться 1 стороны и содержать 2 вершины с внутренним углом > 90 OR 3) касаться 2 сторон и содержать 1 вершину с внутренним углом > 90 OR 4) касаться 3 сторон итого перебор всех этих случаев по всем вершинам и сторонам многоугольника - O(N^3) операций. но c оч большим простором для оптимизаций и отсеивания заведомо неподходящих случаев.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 17:30 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Не мучайся! Учите матчасть. http://]www.bymath.net/studyguide/geo/sec/geo11.htm ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 17:50 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Палестинец2Aklin . Если решать ту задачу которую ты решаешь(а не автор). то можно вот так: максимальная окружность содержащаяся в многоугольнике обязана 1) лежать на 3 вершинах с внутренним углом > 90 OR 2) касаться 1 стороны и содержать 2 вершины с внутренним углом > 90 OR 3) касаться 2 сторон и содержать 1 вершину с внутренним углом > 90 OR 4) касаться 3 сторон итого перебор всех этих случаев по всем вершинам и сторонам многоугольника - O(N^3) операций. но c оч большим простором для оптимизаций и отсеивания заведомо неподходящих случаев.. я еще забыл действительно. если окружность будет на 3 вершинах только, например. N - колдичество вершин? так это немного. я бы сказал от N^3*log( точность ) до N^3*log( точность )^4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 20:08 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
ну нафига???Не мучайся! Учите матчасть. http://]www.bymath.net/studyguide/geo/sec/geo11.htm там только про 4х угольники да правильные многоугольники ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 20:11 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
2 Neeka Скажите пожалуйста, а Вам в этом семестре на лекциях по этому предмету такие слова как "триангуляция Делонэ", "диаграмма Вороного" слышать не приходилось? Есть у меня такое чуЙство, что центр окружности будет лежать либо на одной из граней диаграммы Вороного или в одной из её вершин... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2006, 21:03 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Палестинец1) лежать на 3 вершинах с внутренним углом > 90 кстати заметил : 180 естественно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2006, 11:59 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Палестинец2Aklin . Если решать ту задачу которую ты решаешь(а не автор). то можно вот так: максимальная окружность содержащаяся в многоугольнике обязана 1) лежать на 3 вершинах с внутренним углом > 90 OR 2) касаться 1 стороны и содержать 2 вершины с внутренним углом > 90 OR 3) касаться 2 сторон и содержать 1 вершину с внутренним углом > 90 OR 4) касаться 3 сторон итого перебор всех этих случаев по всем вершинам и сторонам многоугольника - O(N^3) операций. но c оч большим простором для оптимизаций и отсеивания заведомо неподходящих случаев.. Как определить - точка (внутри/или снаружи) многоугольника? (без этого вроде не решить задачу) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2006, 17:40 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Как определить - точка (внутри/или снаружи) многоугольника? Произвольный луч (например вдоль X) пущенный из точки пересекает стороны нечётное кол-во раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2006, 18:20 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
softwarer aleks2Не обязан. Обязан. Вписанная окружность обязана касаться каждой из сторон многоугольника , для невыпуклого многоугольника это условие невыполнимо. Это кто сказал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2006, 19:38 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
aleks2 softwarer aleks2Не обязан. Обязан. Вписанная окружность обязана касаться каждой из сторон многоугольника , для невыпуклого многоугольника это условие невыполнимо. Это кто сказал? определение вписанной окружности но в данном случае надо только разместить окружность наибольшего радиуса внутри многоугольника ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2006, 20:42 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklinя сразу скажу, что вам нужен будет ну очень неплохой компьютер. т.к. съедать алгоритм будет много премного. далее. возьмем расстояние А = максимально удаленные две точки многоуголника. Для каждой прямой знаем (xa, ya )-(xb, yb) далее. для каждой точки многоулгольника (зная обе линии, коими эта вершина образована, позаботится заранее) берем нашу R = A/2 и D = A. Центр - на биссектриссе. расстояние от вершины до центра можно ввести программно (формулу вывести и ввести). Смотрим для каждой прямой, не пересекает ли прямая окружность. это решается. я думая стоит решать в общем виде, а не перебирать точки. (например задать программное уравнение, или условие, пока не решал как именно ) (кстати, по-моему самый толстый момент). Если пересекает хоть одну, то R = R/2. Если нет, то D = D/2, R = R + D. до определенно малого D. Теперь прикидываем. [кол-во вершин]*[log( точности D )] В принципе не так уж и сложно. а вот программить замудохаца. аффтопитезь да, по поводу програмирования - замудохаца. Смысл мне ясен.Как теперь реализовать это? Не подскажете алгоритм, если можно по-подробней... я не знаю как запрограмировать вышеуказанное. Может есть какой-то вариант по-проще... ПЛЗ!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2006, 22:25 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
aleks2 softwarer Обязан. Вписанная окружность обязана касаться каждой из сторон многоугольника , для невыпуклого многоугольника это условие невыполнимо. Это кто сказал? http://gimn177.ekburg.ru/view.php?ID=30&slink=ref&main=2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.12.2006, 23:35 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
S.G. aleks2 softwarer Обязан. Вписанная окружность обязана касаться каждой из сторон многоугольника , для невыпуклого многоугольника это условие невыполнимо. Это кто сказал? http://gimn177.ekburg.ru/view.php?ID=30&slink=ref&main=2 Гимназии нынче уже не те... исходная постановка>> задача: в простой многоугольник вписать круг наибольшего радиуса.. Не требует касания всех сторон. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2006, 06:42 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
это уже не вписанная окружность, а впихнутая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2006, 12:22 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
можно алгоритм пожалуйсто... плз!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2006, 13:51 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Если я правильно понял автора Aklin, он утверждает что центр искомой окружности будет лежать на биссектрисе угла при одной из вершин многоугольника. Если моё понимание того что предложено правильно, то предлагаю проделать следующее: 1.Берем квадрат. 2.Вписываем в него окружность. 3.Отрезаем у квадрата вершины так, чтобы линии отреза не пeресекали и не касались вписанной окружности. 4.Проверяем гипотезу о том, что центр окружности лежит на бессиктрисе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2006, 19:58 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikhail_nЕсли я правильно понял автора Aklin, он утверждает что центр искомой окружности будет лежать на биссектрисе угла при одной из вершин многоугольника. Если моё понимание того что предложено правильно, то предлагаю проделать следующее: 1.Берем квадрат. 2.Вписываем в него окружность. 3.Отрезаем у квадрата вершины так, чтобы линии отреза не пeресекали и не касались вписанной окружности. 4.Проверяем гипотезу о том, что центр окружности лежит на бессиктрисе. причем здесь квадрат?? мне круг надо в простой многоугольник вписать.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 10:10 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
А с какой точностью необходимо дать ответ задачи? Мне кажется что без методов оптимизации здесь не обойтись, но тогда возникает угроза попасть в локальный минимум, нужно будет придумать условие где начать поиск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 11:30 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Что-то в ICQ-у к тебе не могу достучаться, Neeka. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 11:43 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
2 Neeka Ну видите ли, Aklin предложил некий метод решения Вашей проблемы основанный (если я правильно его понял) на предположении о том, что центр искомой окружности будет лежать на биссектрисе угла при одной из вершин многоугольника. Вы сказали: Смысл мне ясен. Очевидно, что данное утверждение не верно в случае невыпуклого многоугольника. Мой простой пример с квадратом демонстрирует что данное утверждение неверно и в случае выпуклого многоугольника, т.е. оно не верно вообще. Вот и всё. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 19:11 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikhail_n 3.Отрезаем у квадрата вершины так, чтобы линии отреза не пeресекали и не касались вписанной окружности. 4.Проверяем гипотезу о том, что центр окружности лежит на бессиктрисе. Вы что не договорили про отрезание вершин. Я повернул квадрат на 45 градусов и новым квадратом отрезал 4 вершины. Центр продолжает лежать на биссектрисах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 19:21 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
сорри, новые линии будут касаться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 19:28 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
повернуть квадрат на 45 градусов и увеличить сторону след. квадрата, так чтобы она оставалась меньше диагонали предыдущего квадрата. Взять пересечение квадратов. В полученный восьмиугольник нельзя вписать больший круг, а на биссектрисах центр окружности не лежит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 19:34 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Вообщем, думаю, чисто алгоритм поднять дня за два реально, я так посидел, посмотрел на эту задачу в течении часа - вообщем, по-моему, предётся лазить по всем сторонам и искать окружность макс. радиуса, касающуяся рассматриваемой в данный момент стороны и невыходящую за пределы многоугольника. В случае выпуклого многоугольника особых проблем не вижу, для невыпуклого у меня ещё есть ряд неясных моментов чисто с точки зрения численной реализации (ну там кусочно-линейная граница на противоположной стороне в общем случае будет разрывной - не физически конечно, но с точки зрения алгоритма). Думаю, реально построить алгоритм трудоёмкостью O(N*lnN), ну в худшем случае О(N^2). Однако это всё слова, слова, слова. Реально по соотношению (личный безкорыстный творческий интерес)/(трудоёмкость) с моей скромной точки зрения эта задача за пределами тех на которые стоит безвозместно тратить время и силы. Хотя, конечно, можно какую-нибудь наукообразную эвристику слепить по-быстрому, эта да, но это не так интересно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 21:03 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
тема намбер два: радиус = максимально удаленные две точки/4 дельта = максимально удаленные две точки/2 первоначально надо найти центр * * например ввести сетку и найти максиамальный удаление точки от краев (хотя бы по 8 углам, лучше больше) смотрим, пересекает ли хто-нибудь (им отрезков)** данную окружность. далее если пересекает, то если перескает сверху, то пробуем пройти на дельта (для каждого направления рукурсия отдельно) вниз, влево, вверх. и вправо. если все же пересекает,то уменьшаем радиус на дельта. если не пересекает, то увеличиваем. дельта = дельта/2. если точность дельта достингута, екзит. ** - сложнуй случай - хорда приложение - реально сложный случай аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 21:29 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 21:29 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
конечно же Aklin радиус = максимально удаленные две точки/2 дельта = максимально удаленные две точки/4 как вывод: максиальный радиус - почти две максимально удаленный точки. вот только центр надо бы найти верно. аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 21:31 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
по поводу пересекает ли отрезок окружность: товарищи, так это математика: аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2006, 21:35 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikhail_nВообщем, думаю, чисто алгоритм поднять дня за два реально, я так посидел, посмотрел на эту задачу в течении часа - вообщем, по-моему, предётся лазить по всем сторонам и искать окружность макс. радиуса, касающуяся рассматриваемой в данный момент стороны и невыходящую за пределы многоугольника. Ещё раз намекну что эт тоже самое что рассматривать все тройки из вершин и сторон и пытатся вписать в них окружность. проверяя каждую окружность на нахождение внутри многоугольника. алгоритм без лишних оптимизаций - элементарнейший. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 08:57 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Палестинец mikhail_nВообщем, думаю, чисто алгоритм поднять дня за два реально, я так посидел, посмотрел на эту задачу в течении часа - вообщем, по-моему, предётся лазить по всем сторонам и искать окружность макс. радиуса, касающуяся рассматриваемой в данный момент стороны и невыходящую за пределы многоугольника. Ещё раз намекну что эт тоже самое что рассматривать все тройки из вершин и сторон и пытатся вписать в них окружность. проверяя каждую окружность на нахождение внутри многоугольника. алгоритм без лишних оптимизаций - элементарнейший. это действительно при условии, что конеецчная окружность касается именно 3х сторон. но выше было опровергнуто, ибо окружность может лежать на трех вершинах, например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 12:44 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklinэто действительно при условии, что конеецчная окружность касается именно 3х сторон. но выше было опровергнуто, ибо окружность может лежать на трех вершинах, например. рассматривать все тройки из вершин и сторон ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 12:50 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Палестинец рассматривать все тройки из вершин и сторон поправка: рассматривать все комбинации Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 12:58 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklin Палестинец рассматривать все тройки из вершин и сторон поправка: рассматривать все комбинации Код: plaintext 1. 2. 3. вроде любая тройка уже задаст окружность, другое дело - как определить, что окружность не вывалилась за многоугольник? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 14:17 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Пользователь Aklin Палестинец рассматривать все тройки из вершин и сторон поправка: рассматривать все комбинации Код: plaintext 1. 2. 3. вроде любая тройка уже задаст окружность, другое дело - как определить, что окружность не вывалилась за многоугольник? не любая тройка однозначно задаст окружность. (см. пример выше, тройка без вершины не дает результат) в принципе хватит и троек + итерационный метод. итого - 2*N*log( точности ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 14:22 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklin(см. пример выше, тройка без вершины не дает результат)угу вот у меня тоже ученики так: нарисуют равнобедренный треугольник, а потом говорят: «Из рисунка видно, что треугольник равнобедренный» -_- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 14:43 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklinне любая тройка однозначно задаст окружность А пример привести ("см. выше" - непонятно - куда смотреть) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 15:33 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Aklin не любая тройка однозначно задаст окружность. (см. пример выше, тройка без вершины не дает результат) В примере вроде видно что даёт :-). По трём сторонам однозначно строится окружность которая их касается - если толька все три не параллельны. случай 3 парралельных нам и не нужен. другое дело - как определить, что окружность не вывалилась за многоугольник? см. выше в постах. центр окружности в многоугольнике и не одна сторона не пересекает окружность.. (касаться может > 3 сторон естественно). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 17:20 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Согласен с Палестинцем. в принципе хватит и троек + итерационный метод. итого - 2*N*log( точности ) Не согласен. Во-первых, метод просто точный, т.е. положение и радиус окружности находятся точно при переборе, о каких итерациях идёт речь? Во-вторых, уже для выпуклого многоугольника трудоёмкость при таком подходе O(N*(N^2 + O(1)*N)), т.е. O(N^3), откуда возьмётся N*log(точности??) непонятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 19:04 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikhail_nположение и радиус окружности находятся точно при перебореа как быть, когда количество решений бесконечно? например - прямоугольник ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 19:09 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
А в этом случае алгоритм найдёт конечное число решений (в случае прямоугольника два по концам), вот и всё, могу легко продемонстрировать. Вам как пользователю останется лишь выбрать то, которое Вам больше нравится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 19:16 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikolasЧто-то в ICQ-у к тебе не могу достучаться, Neeka. незнаю. попробуй еще раз 251743359 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2006, 20:54 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikhail_nА в этом случае алгоритм найдёт конечное число решений (в случае прямоугольника два по концам), вот и всё, могу легко продемонстрировать. Вам как пользователю останется лишь выбрать то, которое Вам больше нравится. Я думаю должна нравиться окружность с максимальным радиусом :-) Во-вторых, уже для выпуклого многоугольника трудоёмкость при таком подходе O(N*(N^2 + O(1)*N)), т.е. O(N^3), N^2 + O(1)*N .. - умножить наверно надо.. Все тройки это O(N^3). проверка для каждой тройки на расположение окружности в многоугольнике - O(N). Итого : O(N^4). Всё остальное похоже - нетривиальная оптимизация.(одну из идей оптимизации могу предложить такую, что в основном скажем уже по 2 сторонам (+ направление нормалей сторон) можно отсеять большинство неподходящих случаев (по расположению там или максимально возможному радиусу окружности для этих 2 сторон) и не подбирать к этим 2 - третий элемент) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 09:11 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Палестинец mikhail_nА в этом случае алгоритм найдёт конечное число решений (в случае прямоугольника два по концам), вот и всё, могу легко продемонстрировать. Вам как пользователю останется лишь выбрать то, которое Вам больше нравится. Я думаю должна нравиться окружность с максимальным радиусом :-) а. ну да - про прямоугольник же речь.. тогда да - выбирай себе любой :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 09:18 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
а если решать с помощью диаграмы Вороного? может кто подскажет алгоритм? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 09:39 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Neekaа если решать с помощью диаграмы Вороного? может кто подскажет алгоритм? Я могу подсказать алгоритм.. Забиваешь на этот курс. это похоже не для тебя .. и идёшь в колледж на эконом.. через пару лет становишься уважаемым и богатым специалистом. и нахрен не надо будет никаких диаграмм.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 09:54 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
пример где по трем не построишь. итерации: см. пример. без итераций не добится того, что окружность попадет на вершину. про количество решений: действительно для прямоугольника только 2. а этого и хватит. а вот для идиото-гольника (это как N звезда с квадратами на концах) и то будет конечное количество. (вершин и ребер - то ограничено) проверка всех троек - это N*(N-1)*(N-2) а точность все равно будет, тогода еще *log( точность ), а также для каждой точности надо проверить остальные (N-3) вершин, итого log(точности) - количество итераций __ O(N*(N-1)*(N-2)*log(точности)*(N-3)) = __ O(A 4 N*log(точности)) ~ (имхо) 32N 4 аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 17:19 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
ПалестинецN^2 + O(1)*N .. - умножить наверно надо.. Не, умножать не надо. Имелось ввиду что в выпуклом многоугольнике окружность может касаться только по сторонам. Поэтому для каждой отдельно взятой стороны строим N - 1 биссектрис углов, образованных данной стороной и остальными N - 1 сторонами, если какая-либо сторона параллельна данной, то в качестве биссектрисы берем прямую параллельную обоим и находящуюся от них на равных расстояниях. В общем случае эти N - 1 биссектрис пересекутся в (N - 1)*(N - 2)/2 точках. Для каждой из этих точек пресечения проверим что 3 перпендикуляра из данной точки пересечения двух биссектрис на три стороны, которыми образованы два рассматриваемых угла, попадают внутрь этих трёх сторон. Это O(N^2) операций. После этого отсева у нас останется O(1) точек которые удовлетворают данному условию. Эти оставшиеся точки проверяем на условие не выхода за пределы многоугольника, итого ещё O(1)*O(N) операций. В результате для N шагов имеем N*(O(N^2) + O(1)*O(N)) или O(N^3). Neekaа если решать с помощью диаграмы Вороного? может кто подскажет алгоритм? Да забудьте Вы Вороного, внимательно читайте этот пост, здесь уже для Вас эту задачу решили, если Вы этого не понимаете, то всё дальнейшее бесполезно... На всякий случай скажу вот это: 1.Для ЛЮБЫХ трёх непересекающихся отрезков на плоскости можно определить существует или нет окружность которая будет касаться всех трёх. Для этого существуют точные аналитические формулы. Далее, если такая окружность существует, то она единственна и положение её центра и её радиус можно точно определить. Для этого существуют точные аналитические формулы. 2.Для ЛЮБЫХ двух непересекающихся отрезков и точки на плоскости можно определить существует или нет окружность которая будет касаться двух отрезков и проходить через точку. Для этого существуют точные аналитические формулы. Далее, если такая окружность существует, то она единственна и положение её центра и её радиус можно точно определить. Для этого существуют точные аналитические формулы. 3.Для ЛЮБОГО отрезка и двух точек на плоскости можно определить существует или нет окружность которая будет касаться отрезка и проходить через обе точки. Для этого существуют точные аналитические формулы. Далее, если такая окружность существует, то она единственна и положение её центра и её радиус можно точно определить. Для этого существуют точные аналитические формулы. 4.Для ЛЮБЫХ трёх точек на плоскости... ну это знают все дети. Aklinпример где по трем не построишь. А Вы, я смотрю, продолжаете упорствовать. Тогда обратите внимание на пункт 2 выше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.12.2006, 19:26 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
mikhail_n А Вы, я смотрю, продолжаете упорствовать. Тогда обратите внимание на пункт 2 выше. 2.Для ЛЮБЫХ двух непересекающихся отрезков и точки на плоскости можно определить существует или нет окружность которая будет касаться двух отрезков и проходить через точку. Для этого существуют точные аналитические формулы. Далее, если такая окружность существует, то она единственна и положение её центра и её радиус можно точно определить. Для этого существуют точные аналитические формулы. обоснуйте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2006, 19:24 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
и вот это пожалуйста то же. (пример) окружность - три степени свободы. в 2д пространстве. точка - 2, точка - 2, прямая - 1 -> 5 похоже две точно можно точка - 2, прямая - 1, прямая - 1 -> 4 две точно можно прямая - 1, прямая - 1, прямая - 1 -> 3 !!! это могу прокоментирвать:точка - 2, точка - 2, точка - 2 = 6 так: степеней свободы надо бы кратно трем чтобы было. аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2006, 19:30 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
ну да, точка, точка, точка - 3 !!! аффтопитезь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2006, 19:32 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Что ж, Вы правы, для случая одной точки и двух отрезков и двух точек и отрезка замените: Далее, если такая окружность существует, то она единственна и положение её центра и её радиус можно точно определить... на Далее, если такая окружность существует, то их может быть не более 2х и положение их центров и радиусы можно точно определить... С точки зрения алгоритма это мало что меняет, на одну проверку для каждого шага больше, только и всего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.12.2006, 21:10 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Шеймас, Препарата с.362 или ч-з Диаграмму Воронного Помогите теперь и Вы мне. В заданный звездный N-угольник вписать прямоугольник максимальной площади. Что-то эта задача не сводится к ЗЛП. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2006, 21:27 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
2 moderator: Прошу прощения, переместите часть последнего сообщения в новую тему или удалите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.12.2006, 21:29 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
где ее взять? книгу эту?? у тебя есть?? принеси на пары... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2006, 23:00 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Помогите составить уравнение! В двузначном числе цифра единиц втрое меньше цифры десятков. Если это число разделить на три и к результату прибавить 8, то получится двузначное число, записанное теми же цифрами, взятыми в обратном порядке. Найдите заданное двузначное число. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2007, 21:58 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
(3*x*10 +x)/3+8 = (x*10+3*x) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2007, 13:27 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
Антонина wrote: > Помогите составить уравнение! В двузначном числе цифра единиц втрое > меньше цифры десятков. Если это число разделить на три и к результату > прибавить 8, то получится двузначное число, записанное теми же цифрами, > взятыми в обратном порядке. Найдите заданное двузначное число. Зачем уравнение? "В двузначном числе цифра единиц втрое меньше цифры десятков" -> есть три варианта: 31, 62, 93. После деления на при и сложения получается двузначное число -> исходное число делится на три нацело. Значит - 93. Проверяем - 93/3+8=39. Уравнение: число x = 10a+b; y = 10b+b; a=3b; здесь a - цифра десятков, b - цифра единиц. Из условия задачи имеем x/3+8 = y; Имеем систему уравнений относительно двух неизвестных: |(10a+b)/3+8 = 10b+a |a=3b Разберемся с первым: 10a+b = 30b+3a-24 10a-3a=30b-24-b 7a=29b-24 подставим второе: 21b=29b-24 8b=24 b=3 Из второго уравнения имеем a=9 Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2007, 19:09 |
|
||
|
помогите решить задачу
|
|||
|---|---|---|---|
|
#18+
господи. по сабжу. неужели в 2006 году было плохо с инетом? поиск в гугле сразу дает решение . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2007, 23:54 |
|
||
|
|

start [/forum/topic.php?all=1&fid=16&tid=1345684]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
167ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
60ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 510ms |

| 0 / 0 |
