<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94748</guid>
        <pubDate>Mon, 23 Sep 2002 23:08:57 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94748</link>
        <description><![CDATA[Машина: Заботлывый ты ;D. Проапгрейдь ;D]]></description>
        <author>Машина</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94747</guid>
        <pubDate>Mon, 23 Sep 2002 23:03:37 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94747</link>
        <description><![CDATA[DrUnkard: Может комп проапгрейдить? А лучше монитор, авось побыстрее доходить станут? ::)]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94746</guid>
        <pubDate>Mon, 23 Sep 2002 22:58:30 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94746</link>
        <description><![CDATA[Машина: Да, скоро начнут доходить посты с апреля сего года. Жду не дождусь :).]]></description>
        <author>Машина</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94745</guid>
        <pubDate>Mon, 23 Sep 2002 22:29:50 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94745</link>
        <description><![CDATA[DrUnkard: Это к тебе в Польшу только сегодня тема дошла? Ну и далече же ты! ;D]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94744</guid>
        <pubDate>Mon, 23 Sep 2002 18:34:38 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94744</link>
        <description><![CDATA[Машина: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>Drunkard, 26.03.02, 02:56:53</span><div class='quote '>Вот murph уже решение предложил.<br>И я тоже на пальцах придумал. Ну ладно уж выложу его тоже, раз уж обдумал и записал.<br>Вот тебе алгоритм определения находится ли точка в заданном тр-ке. С таким решением сможет справиться не то чтобы 10-классник, а 6-ти классник. Нау хау продадим тупым буржуям  ;) </div></div><br>Алгоритм, конечно, классный, но долгий :), а имеется другой школьный способ из линейной алгебры. Решаем систему уравнений с тремя неизвестными (a, b, c)<br>Tx = a*x1 + b*x2 + c*x3<br>Ty = a*y1 + b*y2 + c*y3<br>1 = a + b + c<br><br>Если a, b, c &gt;= 0, то точка лежит в треугольнике ;) (это расширяется на все выпуклые полигоны)<br>(я понимаю, что тема стара, и про неё уже забыли, но увидев такое, не мог не отозваться ;))<br>]]></description>
        <author>Машина</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94743</guid>
        <pubDate>Thu, 28 Mar 2002 17:03:00 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94743</link>
        <description><![CDATA[murph: а так?<br><div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;br&#62;function IsPointIntoPolygon(x,y:real;X,Y:array[0..N] of real):Boolean&#60;br&#62;begin&#60;br&#62;  i:=0;&#60;br&#62;  Result:=False;&#60;br&#62;  X[0]:=X[n];&#60;br&#62;  Y[0]:=Y[n];&#60;br&#62;  repeat&#60;br&#62;    if not((y&#62;Y[i])xor(y&#60;=Y[i+1]))&#60;br&#62;    then&#60;br&#62;    begin&#60;br&#62;      if (x-X[i]&#60;(y-Y[i])*(X[i+1]-X[i])/(Y[i+1]-Y[i]))&#60;br&#62;      then&#60;br&#62;      begin&#60;br&#62;        Result:=not(Result)&#60;br&#62;      end;&#60;br&#62;    end;&#60;br&#62;    i:=i+1&#60;br&#62;  until not(i&#60;=n-1);&#60;br&#62;end;&#60;br&#62;</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94742</guid>
        <pubDate>Thu, 28 Mar 2002 16:41:54 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94742</link>
        <description><![CDATA[DrUnkard: m ты где вычитал свой этот бред! ;D<br>Ты раскинь мозгой и поймешь, какая там у тебя одна строчка.<br>Итак:<br>1) что ты будешь делать со своим лучом если он воткнется прямиком в вершину? Тогда точка может быть внутри, а если он коснулся вершины и точка снаружи?<br>2)для n-угольника с вершиной вовнутрь сушествует вероятность, что луч пройдет прямо по стороне и число пересечений луча и стороны будет равно бесконечности.<br><br>Так, что Шура, не пудрите мне мозги. Уши от мертвого осла получишь у Пушкина. ;D<br>У моего алгоритма таких проблем нет.]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94741</guid>
        <pubDate>Wed, 27 Mar 2002 04:40:56 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94741</link>
        <description><![CDATA[MeG: Алгоритм с лучем проще в описании чем твой Drunkard<br><br>Если луч выпущеный из точки пересекает не четное количество сторон, то точка внутри.<br><br>в одну строку :))<br><br> &nbsp;этот алгоритм работает для n-угольника<br> &nbsp;этот алгоритм работает для любого! n-угольника, включая неправильные (у которых некоторые вершины смотрят внутрь:)<br> &nbsp;он так же работает для любого многоугольника с дыркой или несколькими дырками.<br><br>твой, завалится на неправильных и на дырках.]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94740</guid>
        <pubDate>Wed, 27 Mar 2002 04:12:48 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94740</link>
        <description><![CDATA[purpe: вот такой у нас murph шутник и затейник :)<br>]]></description>
        <author>purpe</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94739</guid>
        <pubDate>Tue, 26 Mar 2002 21:09:44 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94739</link>
        <description><![CDATA[DEiL: вы меня запутали<br>1) на кой, извините меня, хер искать окружность, центр которой внутри треугольника?<br>2) и вы думаете обычный 11-тиклассник на олимпиаде, где у него помимо этого есть ещё 5-6 задач придумает такие решения и заставит всё это работать (без компьютера) за 2-3 часа? :)<br>]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94738</guid>
        <pubDate>Tue, 26 Mar 2002 11:14:30 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94738</link>
        <description><![CDATA[murph: Я не сердитый, я угрюмый :))<br>Ну лана, лана. Ну две там проверки, я забыл :)<br>(с надеждой) шо, таки не работает? Ну могет быть, я давно не проверял, может протухло :)]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94737</guid>
        <pubDate>Tue, 26 Mar 2002 04:27:37 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94737</link>
        <description><![CDATA[MeG: murph, ты чё такой сердитый, алгоритм предложил? и знаешь как он работает?:))<br>и еще разок пересчитай сколько там проверок и операций :)))]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94736</guid>
        <pubDate>Tue, 26 Mar 2002 04:24:18 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94736</link>
        <description><![CDATA[MeG: Ты силен Drunkard, теперь можешь даже третьеклассику рассказывать как точку в треугольнике найти :)]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94735</guid>
        <pubDate>Mon, 25 Mar 2002 23:56:53 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94735</link>
        <description><![CDATA[DrUnkard: Вот murph уже решение предложил.<br>И я тоже на пальцах придумал. Ну ладно уж выложу его тоже, раз уж обдумал и записал.<br>Вот тебе алгоритм определения находится ли точка в заданном тр-ке. С таким решением сможет справиться не то чтобы 10-классник, а 6-ти классник. Нау хау продадим тупым буржуям  ;) Так что, m, прежде чем язык показывать, следует пораскинуть мозговую извилину. Итак, нарисуй на бумажке треугольник АВС. Возьми три карандаша серый, бурый и малиновый.<br>1) Рассмотрим сторону АВ. Прямая АВ делит декартову плоскость на две полуплоскости. Вопрос: в какой полуплоскости всегда лежит любая точка, принадлежащая тр-ку?<br>Ответ: в той в которой находится противолежащая вершина тр-ка.<br>Бери серый карандаш и штри_х_у_й ту полуплоскость в которой находится вершина С.<br>2) Рассмотрим сторону ВС. Прямая ВС делит декартову плоскость на две полуплоскости. Вопрос: в какой полуплоскости всегда лежит любая точка, принадлежащая тр-ку?<br>Ответ: в той в которой находится противолежащая вершина тр-ка.<br>Бери бурый карандаш и штри_х_у_й ту полуплоскость в которой находится вершина А.<br>3) Рассмотрим сторону АС. Прямая АС делит декартову плоскость на две полуплоскости. Вопрос: в какой полуплоскости всегда лежит любая точка, принадлежащая тр-ку?<br>Ответ: в той в которой находится противолежащая вершина тр-ка.<br>Бери малиновый карандаш и штри_х_у_й ту полуплоскость в которой находится вершина В.<br>Итого: все точки принадлежащие тр-ку закрасились в серо-буро-малиновый цвет.<br>Мысль понятна?<br>Теперь встает задача аналитически это провернуть. И она решается также просто и неотвратимо, как зависание Виндов.<br>Берем любую точку на плоскости, например Т с координатами Тх и Ту. Даны координаты вершин тр-ка АВС. Определить: находится ли Т внутри тр-ка.<br>Известно уравнение прямой проходящей через две точки : <br>(У-У1)/(У2-У1)=(Х-Х1)/(Х2-Х1)<br>1) Начинаем со стороны АВ. И уравнение прямой будет выглядеть тогда так:<br>(У-Уа)/(Ув-Уа)=(Х-Ха)/(Хв-Ха)<br>Лежит ли точка Т в одной полуплоскости с вершиной С ?<br>В уравнение прямой вместо Х подставляем Сх (абсцисса противолежащей вершины, известна по условию задачи).<br>Находим У(что-то типа проекции вершины С на прямую АВ). Вычтем из полученного У, Су(ордината противолежащей вершины, известна по условию задачи). Запомним знак разности У-Су.<br>В уравнение прямой вместо Х подставляем Тх (абсцисса точки).<br>Находим У(что-то типа проекции точки Т на прямую АВ). Вычтем из полученного У, Ту(ордината точки). Получим знак разности У-Ту.<br>Если знаки совпали, то Т и С лежат в одной полуплоскости. Если нет, то Т не принадлежит тр-ку и вычисления завершаем.<br>2) Меняем АВ на ВС, а С на А и повторяем пункт 1.<br>3) Меняем ВС на АС, а А на В и повторяем пункт 1.<br>Вот и все решение.<br>Частный случай - сторона тр-ка параллельна оси У. Решается легко, анализом лишь величины Тх, Сх и величины Х на которую прямая отстоит от оси ординат.<br>Второй частный случай - сторона тр-ка параллельна оси Х. У - постоянная и известная величина. Достаточно просто сравнить знаки в разностях У-Су и У-Ту. При совпадении знаков, Т и С лежат в одной полуплоскости.<br>Ну-с, тов. m, надеюсь я все четко разжевал  ;D<br><br>Применительно к поставленной задаче, решение ровно в три раза проще.<br>Есть тр-к АВС, у которого АВ самая длинная сторона. Решаем по пункту 1. И этого достаточно. Так как центр описанной окр-ти - это не произвольная точка. И если он в одной полуплоскости с вершиной С, то он внутри тр-ка, иначе - снаружи.<br>Очевидно, что данная задача под силу шестикласснику.  :P<br>И чего там буржуи за алгоритмы с видеокартами городят, лучи какие-то.<br>]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94733</guid>
        <pubDate>Mon, 25 Mar 2002 11:30:44 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94733</link>
        <description><![CDATA[murph: Ну елы блин палы! m, ну че ты народу мозги пудришь со сложностью алгоритма? Проверка того, что две точки лежат по одну или по разные стороны от прямой, заданной двумя точками - это ОДНА проверка и ОДНА операция. Формулку только надо знать.<br><br><div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#60;br&#62;function IsOneSide(x1,y1,x2,y2:real;xL1,yL1,xL2,yL2:real):Boolean&#60;br&#62;begin&#60;br&#62;  if xL1&#60;&#62;xL2&#60;br&#62;  then&#60;br&#62;  begin&#60;br&#62;    Result:=((y1-yL1+(yL1-yL2)*(x1-xL1)/(xL2-xL1))*(y2-yL1+(yL1-yL2)*(x2-xL1)/(xL2-xL1))&#62;0)&#60;br&#62;  end&#60;br&#62;  else&#60;br&#62;  begin&#60;br&#62;    Result:=(x1-xL1)*(x2-xL2)&#62;0&#60;br&#62;  end;&#60;br&#62;end;&#60;br&#62;</div></ol></div></div></div></div><br><br>Ну дальше там все понятно.]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94732</guid>
        <pubDate>Mon, 25 Mar 2002 10:27:41 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94732</link>
        <description><![CDATA[DrUnkard: &lt;m&gt; ну ты прямо завалил своими мыслями и предложениями.<br>Да сказал про полуплоскости - это самое первое и самое простое, что сразу на ум напрашивалось.<br>Ну вот, а теперь надо подумать &nbsp;;D]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94731</guid>
        <pubDate>Mon, 25 Mar 2002 08:04:17 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94731</link>
        <description><![CDATA[MeG: 2Drunkard<br>вообще можно и как ты предложил :))<br>берем одну из прямых, в одной полуплоскости остается вершина треугольника<br>если отрезок от этой вершины к точке не пересекает прямую <br>берем следующую прямую и противолежащую к ней вершину<br><br>но это тоже самое, три прямых, три отрезка]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94730</guid>
        <pubDate>Mon, 25 Mar 2002 07:40:03 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94730</link>
        <description><![CDATA[MeG: Drunkard, что значит в какой полуплоскости?<br>чем они отличаются? левая-правая. верхня-нижняя<br>или формулка есть какая отличающая полуплоскости?<br>:))<br>ты попробуй, по трем точкам составь уравнения прямых и определи своим методом где находится четвертая точка.<br>сколько это займет килобайт-дней?:)<br><br>часто делают так<br>из точки пустить луч вдоль одной из осей координат <br>найти пересечения с прямыми, определить находятся эти пересечения в пределах отрезков <br>посчитать количество пересечений с отрезками<br>если одно пересечение, то точка в треугольнике<br>отдельно приходится обрабатывать пересечения с вершинами, так как в вершине либо ни одного, либо два отрезка (как задашь отрезки) <br>к стати:) в видеокартах аппаратно реализован этот алгоритм.<br><br>в любом случае эта задачка не для одиннадцатого класса :P]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94729</guid>
        <pubDate>Sun, 24 Mar 2002 17:59:59 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94729</link>
        <description><![CDATA[murph: Дык, а мы что говорили :) Там даже есть такое интересное соотношение, что расстояние от одной из вершин на самой большой стороне до центра окружности равно a^2/b, где a - вторая по величине сторона. b - наименьшая. Типа того.]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94728</guid>
        <pubDate>Sun, 24 Mar 2002 15:51:13 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94728</link>
        <description><![CDATA[DEiL: только что проверял разные варианты - моя программа находит центр окружности в основном на самой большой стороне, но не всегда в центре :)]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94727</guid>
        <pubDate>Sun, 24 Mar 2002 13:28:31 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94727</link>
        <description><![CDATA[DrUnkard: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>m, 23.03.02, 14:51:26</span><div class='quote '>2Drunkard<br>по первому сообщению, пункт пятый<br>задачка, определить находится точка внутри треугольника или снаружи посложнее будет чем текущая :))<br><br></div></div><br><br>Ты не прав, m!<br>Когда задано уравнение прямой, довольно легко определить в какой полуплоскости лежит заданная точка. Нужно проанализировать всего лишь одно условие. Для определения нахождения точки внутри треугольника, должно выполниться всего лишь три условия, что очень просто.<br>]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94726</guid>
        <pubDate>Sat, 23 Mar 2002 12:40:06 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94726</link>
        <description><![CDATA[MeG: по поводу дискретности :))<br><br>представляем уравнение прямой в параметрическом виде (от t)<br>подставляем в уравнение растояния между точками.<br>ищем экстремумы, <br>от t переходим к x,y<br>t=0 разумеется, нужно привязать к одной из вершин на этой прямой.<br><br>а если будем шагать по t получим дискредность.<br><br>кто силен в производных? :))]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94725</guid>
        <pubDate>Sat, 23 Mar 2002 12:18:39 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94725</link>
        <description><![CDATA[MeG: сначала убраем два элементарных случая.<br><br> 1. если треугольник прямоугольный<br>радар нужно поставить посредине гипотенузы, на его минимальном радиусе окажутся все три вершины.<br><br>В остальных случаях только две вершины окажутся на окружности охвата радара (третья вершина внутри:)<br><br> 2. треугольник содержит тупой угол (&gt; 90°)<br>радар ставим на середину самой длинной стороны, окружность проходит через вершины этой самой стороны, по моему очевидно :))<br><br> 3. остальные<br>радар ставим на самую длинную сторону (или любую из самых длинных),<br>но окружность проходит через вершину (пусть А) противоположную этой самой длинной стороне и вершину противоположную самой короткой стороне (В).<br>центр окружности находится как пересечение самой длинной стороны и перпендикуляра направленного из середины (murph это не медиана :) стороны АВ.<br><br><br>В общем-то тоже самое, что сказал Drunkard только в другой руке :))<br>]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94724</guid>
        <pubDate>Sat, 23 Mar 2002 11:51:26 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94724</link>
        <description><![CDATA[MeG: 2Drunkard<br>по первому сообщению, пункт пятый<br>задачка, определить находится точка внутри треугольника или снаружи посложнее будет чем текущая :))<br><br>]]></description>
        <author>MeG</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94723</guid>
        <pubDate>Sat, 23 Mar 2002 09:56:56 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94723</link>
        <description><![CDATA[DEiL: давай \%)<br>выкладывай сюда координаты вершин и получившийся радиус и я скажу свой радиус -)]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94722</guid>
        <pubDate>Fri, 22 Mar 2002 21:10:44 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94722</link>
        <description><![CDATA[murph: Значит, твое решение не было оптимальным :)<br>Давай цифирьки, сравним :)]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94721</guid>
        <pubDate>Fri, 22 Mar 2002 21:03:04 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94721</link>
        <description><![CDATA[DEiL: ну не понимаю я вашего решения \%)<br>у меня в основном не было такого, чтобы центр этой фиг-знает-какой-окружности лежал на центре самой большой стороны, либо как-то был связан с медианами, высотами и прочим \%)]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94720</guid>
        <pubDate>Fri, 22 Mar 2002 20:39:52 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94720</link>
        <description><![CDATA[DrUnkard: Ну нет, вы понЯли!!!<br>Сначала получил решение задачи, а потом культурно всех послал на хрен. :)<br>Нет, чтобы пузырь поставить. :(]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94719</guid>
        <pubDate>Fri, 22 Mar 2002 20:19:29 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94719</link>
        <description><![CDATA[DEiL: да идите вы нахрен со своими медианами :)))<br>]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94718</guid>
        <pubDate>Fri, 22 Mar 2002 11:20:03 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94718</link>
        <description><![CDATA[murph: 2Deil - насчет переборного метода (&quot;прошелся по сторонам&quot;) - я бы за такой ответ как проверяющий минимум поставил (как за задачу решенную, но слишком в лоб). При наличии очевидного аналитического решения не имеет смысла использовать перебор. А если у тебя действительно треугольник имеет площадь тысячи километров? Какой ты выберешь шаг?<br>ЗЫ. В реальной ситуации при возникновении подобной задачи она решалась бы как установка радара в середину самой длинной стороны. Всегда. :)]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94717</guid>
        <pubDate>Fri, 22 Mar 2002 10:53:53 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94717</link>
        <description><![CDATA[murph: На самом деле, математическое решение этой задачи будет таким (может я и напутал, ну так вы поглядите).<br>Берем треугольник. Определяем длины сторон. Опускаем медиану на самую длинную сторону. Если медиана &lt;= половине самой длинной стороны, то правильный ответ - радиус = половина длинной стороны, центр на середине этой стороны. <br>Далее, если медиана &gt; половины самой длинной стороны, то решение такое.<br>Нужно найти такую точку на самой длинной стороне, чтобы треугольник, образованный этой точкой и второй по величине стороной треугольника был равнобедренным. <br>Исключительный случай - равносторонний треугольник, в нем эта точка лежит на середине стороны.<br>Вобщем-то практически тоже, что и Дрункард предложил. Хотя я думал над задачей, не читая его письма :)]]></description>
        <author>murph</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94716</guid>
        <pubDate>Fri, 22 Mar 2002 10:18:54 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94716</link>
        <description><![CDATA[DEiL: 2Drunkard -&gt; я отлично засёк твою мысль, но. тебя скорее всего запутали - радар есть окружность, в случае с непрямоугольным треугольником, НЕ является описанной! вот в чём вся соль то :) и именно поэтому её центр может лежать не на самой длинной стороне -)<br><br>когда проверяли задачи, один чел так и сделал - прошёлся по самой длинной, а я по всем сторонам. в итоге &nbsp;наши радиусы отличались на десятые доли линейной единицы -)]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94715</guid>
        <pubDate>Fri, 22 Mar 2002 00:00:13 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94715</link>
        <description><![CDATA[DrUnkard: Что значит сия фраза, я совсем не понял:<br><div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>DEiL, 21.03.02, 13:27:26</span><div class='quote '>а пересечение серединных перпендикуляров не всегда давало правильный ответ. </div></div><br>Причем тут правильный ответ? Точка встречи перпендикулов дает центр описанной окр-ти и всё. Ты можешь считать его правильным или не правильным, но есть там, именно в этой точке. :)<br><br>А теперь это:<br><div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>DEiL, 21.03.02, 13:27:26</span><div class='quote '> - на практике у меня получалось так, что центр радара не всегда лежал на самой длинной стороне</div></div><br>Попробуем привлечь остатки здравого смысла. &nbsp;;) Что есть стороны треугольника в контексте описанной окр-ти, спрошу я вас, тов. Дейл (без Чипа)? О це есть хорды.<br>И с этим не поспоришь. Задам вам и другой вопрос: Какая из хорд ближе всего к центру сей окр-ти? И тов. Дейл ответит - самая длинная и будет прав. Другими словами, центр описанной окр-ти тяготеет к самой длинной стороне тр-ка. При равностороннем тр-ке он находится точно в центре тр-ка, т.е. равноудален от всех сторон.<br>Получается, что выгоднее сдвигать положение радара к самой длинной стороне, т.к. он ближе всех к центру описанной окр-ти.<br>Если у тебя получалось по другому, то ищи ошибку.<br>Здравый смысл подсказывает, что радар не может находиться на не самой длинной стороне. (Хотя, как ты помнишь, мое мнение может не совпадать с моей же точкой зрения ;D) <br>Есть другие мнения?<br><br>]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94714</guid>
        <pubDate>Thu, 21 Mar 2002 20:30:30 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94714</link>
        <description><![CDATA[DEiL: 2Drunkard: с массивом - это ты загнул :))<br>всё намного проще :<br>for (...)<br> for (...)<br> &nbsp;{<br> &nbsp; &nbsp;l1 = ...<br> &nbsp; &nbsp;l2 = ...<br> &nbsp; &nbsp;l3 = ...<br> &nbsp; &nbsp;max = max(l1,l2,l3);<br> &nbsp; &nbsp;if (max &lt; R) { R = max; pos_x = x; pos_y = y; };<br> &nbsp;};<br>ненавижу массивы :)<br><br>далее у меня есть - #define _SHAG 0.001 // выставляем любой шаг :)<br><br>зы. а вот какой метод лучше - аналоговый или дискретный - это я х3, я таких слов не знаю :)))))]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94713</guid>
        <pubDate>Thu, 21 Mar 2002 13:51:00 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94713</link>
        <description><![CDATA[Kuss: я думаю, надо найти весовой центр треугольника, опустить перпендикуляры на стороны, с ближайшей стороны рисовать круг, радиусом расстояния до дальней вершины.]]></description>
        <author>Kuss</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94712</guid>
        <pubDate>Thu, 21 Mar 2002 11:42:15 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94712</link>
        <description><![CDATA[DrUnkard: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>DEiL, 21.03.02, 13:27:26</span><div class='quote '><br>2) проходимя по всему периметру треугольника<br>3) считаем минимальный радиус :)<br><br></div></div><br><br>Энто значит ты проходил по периметру и в каждой точке считал три расстояния (до трех вершин). Из них находил максимум и сохранял это значение. Пройдя весь периметр, получил массив максимальных расстояний и выбрал из них одно - минимальное. И для него извлек соответствующие координаты радара.<br>Я думаю, что правильно тебя понял? Энто типа что-то задачи на минимакс из линейного программирования.<br>Вопрос, а дискретность какая, т.е. шаг с которым изменялся аргумент при проходе периметра.<br>А вдруг он не достаточно мелкий и ты пропустил точку минимума, а? ;)<br><br>У тебя дискретный метод, у меня аналоговый, чисто по построениям и формулам.<br>Что лучше? <br>]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94711</guid>
        <pubDate>Thu, 21 Mar 2002 10:27:26 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94711</link>
        <description><![CDATA[DEiL: интересный вариант, но :) (если я правильно врубился в предложенное решение ;) - на практике у меня получалось так, что центр радара не всегда лежал на самой длинной стороне, а пересечение серединных перпендикуляров не всегда давало правильный ответ. я лично решил всё так :<br>:<br>1) составляем уравнение 3-х прямых<br>2) проходимя по всему периметру треугольника<br>3) считаем минимальный радиус :)<br><br>но вот у меня возникала проблема - это когда одна из сторон параллельно оси Оу - я же прогонял всё по иксам, а у меня он был постоянен :) &nbsp;пришлось разворачивать треугольник вокруг нуля координат -)<br><br>народ, давайте предлагайте другие решения -) я хочу знать, можно ли ещё как-нибудь решить это :)<br>]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94710</guid>
        <pubDate>Thu, 21 Mar 2002 03:45:00 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94710</link>
        <description><![CDATA[DrUnkard: А чё тут решать - трясти надо! ;D<br><br>Постулат: Центр окружности, описывающей тр-к, лежит на пересечении серединных перпендикуляров к сторонам тр-ка.<br>1) Находим длины сторон. По формулам из аналит геометрии [1,2]=sqrt((x1-x2)^2+(y1-y2)^2) и т.д.<br>2) Определяем самую большую, среднюю и меньшую сторону.<br>4) Если все стороны равны, то радиус радара = высоте тр-ка и радар расположен на середине любой стороны (видно из геометрического построения). Ответ готов.<br>3) Проводим к двум длинным сторонам по серединному перепендикуляру. Формулы берем из аналитической геометрии. На память не помню, но можно вывести.<br>4) Находим координаты точки пересечения этих перпендикуляров (центр окружности).<br>5) Если точка находится вне тр-ка или на стороне, то опуская ее по серединному перпендикуляру к ближайшей стороне, окажемся на середине самой длинной стороны. Таким образом, если точка вне &nbsp;тр-ка или на его стороне, то радиус радара = половине длины самой длинной стороны и радар находится на середине самой длинной стороны. Ответ готов.<br>6) Оставшийся вариант - центр лежит внутри тр-ка. Из построений опять видно, что центр должен лежать на самой длинной стороне, но не в центре, а в точке пересечения самой длинной стороны и серединного перепендикуляра ко второй стороне (мы их проводили два). Координаты этой точки тоже можно найти, и вычислить потом радиус радара. &nbsp;Ответ готов.<br><br>Могет быть есть варианты попроще, но вот этот родился методом &quot;тряски&quot;. :)<br>]]></description>
        <author>DrUnkard</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94709</guid>
        <pubDate>Wed, 20 Mar 2002 22:05:48 +0000</pubDate>
        <title>мозго... занималка :)</title>
        <link>https://forum.sources.ru/index.php?showtopic=9880&amp;view=findpost&amp;p=94709</link>
        <description><![CDATA[DEiL: задача:<br>США проводит свои испытания вооружения в неком треугольнике :) на местности с заданными координатами вершины. Наши юные разведчики хотят знать всё, что происходит в данном треугольнике и решили сделать это всё при помощи радара с радиусом охвата R. <br>вопрос: по заданным координатам вершин треугольников найти наименьший радиус охвата радара, (сам радар [центр окружности] не может заходить внутрь треугольника, максимум - находится на сторонах)<br><br>олимпиада по программированию, 11-й класс, районный тур :)<br>у меня со всеми проверками и наворотами заняло примерно 1 день и 6 килобайт сорцев -)]]></description>
        <author>DEiL</author>
        <category>Алгоритмы</category>
      </item>
	
      </channel>
      </rss>
	