<?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=9835&amp;view=findpost&amp;p=94418</guid>
        <pubDate>Fri, 18 Oct 2002 10:38:06 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94418</link>
        <description><![CDATA[S.Yu.Gubanov: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>Cubloid, 17.10.02, 17:56:10</span><div class='quote '>...пропустили варианты, например a*(-b...</div></div><br>Если такие случаи разрешить, то количество различных комбинаций увеличивается до 395-ти. Это можно вычислить так...<br>Пусть <br>lst[a_, b_, c_, d_ ] := {176 комбинаций из моего предыдущего постинга};<br><br>Выполняем:<br>Union[Simplify[Join[ &nbsp;lst[a, b, c, d],<br> &nbsp;lst[-a, b, c, d], lst[a, -b, c, d], lst[a, b, -c, d], <br> &nbsp;lst[a, b, c, -d],<br> &nbsp;lst[-a, -b, c, d], lst[-a, b, -c, d], lst[-a, b, c, -d],<br> &nbsp;lst[a, -b, -c, d], lst[a, -b, c, -d],<br> &nbsp;lst[a, b, -c, -d],<br> &nbsp;lst[-a, -b, -c, d], lst[-a, -b, c, -d], lst[-a, b, -c, -d], <br> &nbsp;lst[a, -b, -c, -d]<br>]]]<br><br>Получаем:<br>{-a + b/(c - d), a + b/(c - d), a + b*(c - d), a + (b - c)/d, a - b/(c*d), -a + b/(c*d), a + b/(c*d), -(a/b) - c/d, a/b - c/d, <br> a*(b - c/d), -a + b - c/d, a + b - c/d, a*b - c/d, -(a/b) + c/d, a/b + c/d, a*(-b + c/d), a - b + c/d, -(a*(b + c/d)), <br> a*(b + c/d), -a + b + c/d, a + b + c/d, -(a*b) + c/d, a*b + c/d, a - (b*c)/d, -a + (b*c)/d, a + (b*c)/d, a + (-b + c)/d, <br> a - (b + c)/d, a + (b + c)/d, a/(b - c) - d, a*(b - c) - d, a/(b*c) - d, a + b/c - d, (a*b)/c - d, -a - b - c - d, a - b - c - d, <br> a/(b - c - d), a*(b - c - d), -a + b - c - d, a + b - c - d, -(a*b) - c - d, a*b - c - d, (a - b)/(c - d), (a*b)/(c - d), <br> (a + b)/(c - d), (a - b)*(c - d), (a*(c - d))/b, -(a*b*(c - d)), a*b*(c - d), (-a + b)*(c - d), -((a + b)*(c - d)), <br> (a + b)*(c - d), -(a/b) + c - d, a/b + c - d, -a - b + c - d, a - b + c - d, -(a/(b + c - d)), a/(b + c - d), -(a*(b + c - d)), <br> a*(b + c - d), -a + b + c - d, a + b + c - d, -(a*b) + c - d, a*b + c - d, -(a*b) - a*c - d, -(a*b) + a*c - d, (a*c)/b - d, <br> -a - b*c - d, a - b*c - d, -(a*c) - b*c - d, a*c - b*c - d, a/(b*c - d), a*(b*c - d), -a + b*c - d, a + b*c - d, -(a*c) + b*c - d, <br> a*c + b*c - d, -(a*b*c) - d, a*b*c - d, (a + b)*c - d, a/(-b + c) - d, -(a/(b + c)) - d, a/(b + c) - d, a*(b + c) - d, <br> (a - b/c)/d, -((a + b/c)/d), (a + b/c)/d, (a*(b - c))/d, -((a + b - c)/d), (a + b - c)/d, (a*b - c)/d, (a - b)/(c*d), <br> -(a/(b*c*d)), a/(b*c*d), -((a*b)/(c*d)), (a*b)/(c*d), (-a + b)/(c*d), -((a + b)/(c*d)), (a + b)/(c*d), ((a - b)*c)/d, <br> -((a*c)/(b*d)), (a*c)/(b*d), -((a*b*c)/d), (a*b*c)/d, ((-a + b)*c)/d, -(((a + b)*c)/d), ((a + b)*c)/d, (-(a/b) + c)/d, <br> -((a/b + c)/d), (a/b + c)/d, (a*(-b + c))/d, -((a - b + c)/d), (a - b + c)/d, -(a/((b + c)*d)), a/((b + c)*d), -((a*(b + c))/d), <br> (a*(b + c))/d, -((-a + b + c)/d), (-a + b + c)/d, -((a + b + c)/d), (a + b + c)/d, (-(a*b) + c)/d, -((a*b + c)/d), (a*b + c)/d, <br> (b - a*c)/(c*d), (-b + a*c)/(c*d), -((b + a*c)/(c*d)), (b + a*c)/(c*d), (a - b*c)/d, (a - b*c)/(b*d), (-a + b*c)/d, <br> (-a + b*c)/(b*d), -((a + b*c)/d), (a + b*c)/d, -((a + b*c)/(b*d)), (a + b*c)/(b*d), (a - b/c)*d, (-a + b/c)*d, -((a + b/c)*d), <br> (a + b/c)*d, (a - b - c)*d, (a*d)/(b - c), -(a*(b - c)*d), a*(b - c)*d, -((a + b - c)*d), (a + b - c)*d, (a*b - c)*d, <br> ((a - b)*d)/c, -((a*d)/(b*c)), (a*d)/(b*c), -((a*b*d)/c), (a*b*d)/c, ((-a + b)*d)/c, -(((a + b)*d)/c), ((a + b)*d)/c, <br> -((a - b)*c*d), (a - b)*c*d, -((a*c*d)/b), (a*c*d)/b, -(a*b*c*d), a*b*c*d, (-a + b)*c*d, -((a + b)*c*d), (a + b)*c*d, <br> (-(a/b) + c)*d, -((a/b + c)*d), (a/b + c)*d, (a*d)/(-b + c), a*(-b + c)*d, -((a - b + c)*d), (a - b + c)*d, -((a*d)/(b + c)), <br> (a*d)/(b + c), -(a*(b + c)*d), a*(b + c)*d, -((-a + b + c)*d), (-a + b + c)*d, -((a + b + c)*d), (a + b + c)*d, (-(a*b) + c)*d, <br> -((a*b + c)*d), (a*b + c)*d, ((b - a*c)*d)/c, -(((b + a*c)*d)/c), ((b + a*c)*d)/c, (a - b*c)*d, ((a - b*c)*d)/b, (-a + b*c)*d, <br> -((a + b*c)*d), (a + b*c)*d, -(((a + b*c)*d)/b), ((a + b*c)*d)/b, a/(b - c) + d, a*(b - c) + d, (a - b)/c + d, -(a/(b*c)) + d, <br> a/(b*c) + d, a*(-(b/c) + d), -a - b/c + d, a - b/c + d, -(a*(b/c + d)), a*(b/c + d), -a + b/c + d, a + b/c + d, -((a*b)/c) + d, <br> (a*b)/c + d, (-a + b)/c + d, -((a + b)/c) + d, (a + b)/c + d, (a - b)/(-c + d), (a*b)/(-c + d), (a + b)/(-c + d), <br> (a - b)*(-c + d), (a*(-c + d))/b, a*b*(-c + d), (a + b)*(-c + d), -(a/b) - c + d, a/b - c + d, -a - b - c + d, a - b - c + d, <br> -(a/(b - c + d)), a/(b - c + d), -(a*(b - c + d)), a*(b - c + d), -a + b - c + d, a + b - c + d, -(a*b) - c + d, a*b - c + d, <br> (a - b)/(c + d), -(a/(b*(c + d))), a/(b*(c + d)), -((a*b)/(c + d)), (a*b)/(c + d), (-a + b)/(c + d), -((a + b)/(c + d)), <br> (a + b)/(c + d), -((a - b)*(c + d)), (a - b)*(c + d), -((a*(c + d))/b), (a*(c + d))/b, -(a*b*(c + d)), a*b*(c + d), <br> (-a + b)*(c + d), -((a + b)*(c + d)), (a + b)*(c + d), -(a/b) + c + d, a/b + c + d, -(a/(-b + c + d)), a/(-b + c + d), <br> -(a*(-b + c + d)), a*(-b + c + d), -a - b + c + d, a - b + c + d, -(a/(b + c + d)), a/(b + c + d), -(a*(b + c + d)), <br> a*(b + c + d), -a + b + c + d, a + b + c + d, -(a*b) + c + d, a*b + c + d, -((a*c)/b) + d, (a*c)/b + d, a/(-(b*c) + d), <br> a*(-(b*c) + d), -a - b*c + d, a - b*c + d, -(a*c) - b*c + d, a*c - b*c + d, -(a/(b*c + d)), a/(b*c + d), -(a*(b*c + d)), <br> a*(b*c + d), -a + b*c + d, a + b*c + d, -(a*c) + b*c + d, a*c + b*c + d, -(a*b*c) + d, a*b*c + d, -((a + b)*c) + d, (a + b)*c + d, <br> a/(-b + c) + d, a*(-b + c) + d, -(a/(b + c)) + d, a/(b + c) + d, -(a*(b + c)) + d, a*(b + c) + d, (b - c - a*d)/d, <br> -((b + c - a*d)/d), (b + c - a*d)/d, -((b - c + a*d)/d), (b - c + a*d)/d, (-b + c + a*d)/d, -((b + c + a*d)/d), (b + c + a*d)/d, <br> -((b*c + a*d)/d), (a*d)/(c - b*d), (a*(c - b*d))/d, -a - b*c - b*d, a/(b*c - b*d), -a + b*c - b*d, (a*d)/(-c + b*d), <br> -((a*d)/(c + b*d)), (a*d)/(c + b*d), -((a*(c + b*d))/d), (a*(c + b*d))/d, -((a*c + b*d)/b), -((a*c + b*d)/c), a/(-(b*c) + b*d), <br> -a - b*c + b*d, -((c + a*b*d)/d), (c - (a + b)*d)/d, -((c + (a + b)*d)/d), a + (b - c)*d, a - (b*d)/c, -a + (b*d)/c, a + (b*d)/c, <br> a/b - c*d, -a - b - c*d, a - b - c*d, (a - b - c*d)/c, a/(b - c*d), (a*c)/(b - c*d), a*(b - c*d), (a*(b - c*d))/c, -a + b - c*d, <br> a + b - c*d, -((a + b - c*d)/c), (a + b - c*d)/c, -(a*b) - c*d, a*b - c*d, -a - b*d - c*d, a/(b*d - c*d), -a + b*d - c*d, <br> -(a/b) + c*d, a/b + c*d, a/(-b + c*d), (a*c)/(-b + c*d), a*(-b + c*d), -a - b + c*d, a - b + c*d, -((a - b + c*d)/c), <br> (a - b + c*d)/c, -(a/(b + c*d)), a/(b + c*d), -((a*c)/(b + c*d)), (a*c)/(b + c*d), -(a*(b + c*d)), a*(b + c*d), <br> -((a*(b + c*d))/c), (a*(b + c*d))/c, -a + b + c*d, (-a + b + c*d)/c, a + b + c*d, -((a + b + c*d)/c), (a + b + c*d)/c, <br> -(a*b) + c*d, a*b + c*d, -((a*b + c*d)/c), a/(-(b*d) + c*d), -a - b*d + c*d, -((b + a*c*d)/(c*d)), -a - b*c*d, a - b*c*d, <br> -a + b*c*d, a + b*c*d, -((a + b*c*d)/b), -((a + b*c*d)/(b*c)), -(a*d) + b*c*d, a + (-b + c)*d, a - (b + c)*d, <br> (a - (b + c)*d)/(b + c), -a + (b + c)*d, a + (b + c)*d, -((a + (b + c)*d)/(b + c)), (a + (b + c)*d)/(b + c), (b - c*(a + d))/c, <br> -((b + c*(a + d))/c), -a + b/(-c + d), a + b/(-c + d), a + b*(-c + d), -a - b/(c + d), a - b/(c + d), -a + b/(c + d), <br> a + b/(c + d), (b - a*(c + d))/(c + d), -((b + a*(c + d))/(c + d)), (b + a*(c + d))/(c + d), a - b*(c + d), (a - b*(c + d))/b, <br> -a + b*(c + d), a + b*(c + d), -((a + b*(c + d))/b), a - (c + b*d)/d, a - (b + c*d)/c}<br><br><br><br>]]></description>
        <author>S.Yu.Gubanov</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94417</guid>
        <pubDate>Thu, 17 Oct 2002 15:43:21 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94417</link>
        <description><![CDATA[Cubloid: И еще мне кажется, что человеку надо немного прочитать про &quot;польскую нотацию&quot;. В ней легче потом считать сгенерированые выражения своей программой.<br>И еще я точно помню, что в интеренете видел программу реализующую полный перебор всех комбинаций в польской нотации с поиском варианта с максимальным результатом. Так как в свое время не решил эту задачу на олимпиаде :)))]]></description>
        <author>Cubloid</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94416</guid>
        <pubDate>Thu, 17 Oct 2002 14:06:03 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94416</link>
        <description><![CDATA[S.Yu.Gubanov: <div class='tag-quote'><span class='tag-quote-prefix'>Цитата</span> <span class='tag-quote__quote-info'>Cubloid, 17.10.02, 17:56:10</span><div class='quote '>Мне кажется, что вы пропустили варианты, например a*(-b).<br></div></div><br>Да, конечно, такие варианты я пропустил. Я думал, что между 'a' и 'b' может стоять только одна операция из множества {'+','-','*','/'} и одна скобка {'(',')'}, в то время как в выражении &quot;a*(-b&quot; между ними стоят две операции и одна скобка...<br>]]></description>
        <author>S.Yu.Gubanov</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94415</guid>
        <pubDate>Thu, 17 Oct 2002 13:56:10 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94415</link>
        <description><![CDATA[Cubloid: Мне кажется,, что вы пропустили варианты, например a*(-b).<br>Есть еще &quot;Обратная польская нотация&quot;, которая возможно спасет отца русской демократии.<br>]]></description>
        <author>Cubloid</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94414</guid>
        <pubDate>Thu, 17 Oct 2002 07:50:51 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94414</link>
        <description><![CDATA[S.Yu.Gubanov: Упрощая решение на Mathematica получаем всего 176 вариантов<br><br>Union[Simplify[ResultStr]] = {a + b/(c - d), a + b*(c - d), a + (b - c)/d, <br> &nbsp;a - b/(c*d), a + b/(c*d), a/b - c/d, a*(b - c/d), <br> &nbsp;a + b - c/d, a*b - c/d, a/b + c/d, a - b + c/d, <br> &nbsp;a*(b + c/d), a + b + c/d, a*b + c/d, a - (b*c)/d, <br> &nbsp;a + (b*c)/d, a - (b + c)/d, a + (b + c)/d, <br> &nbsp;a/(b - c) - d, a*(b - c) - d, a/(b*c) - d, <br> &nbsp;a + b/c - d, (a*b)/c - d, a - b - c - d, <br> &nbsp;a/(b - c - d), a*(b - c - d), a + b - c - d, <br> &nbsp;a*b - c - d, (a - b)/(c - d), (a*b)/(c - d), <br> &nbsp;(a + b)/(c - d), (a - b)*(c - d), (a*(c - d))/b, <br> &nbsp;a*b*(c - d), (a + b)*(c - d), a/b + c - d, <br> &nbsp;a - b + c - d, a/(b + c - d), a*(b + c - d), <br> &nbsp;a + b + c - d, a*b + c - d, (a*c)/b - d, <br> &nbsp;a - b*c - d, a*c - b*c - d, a/(b*c - d), <br> &nbsp;a*(b*c - d), a + b*c - d, a*b*c - d, <br> &nbsp;(a + b)*c - d, a/(b + c) - d, a*(b + c) - d, <br> &nbsp;(a - b/c)/d, (a + b/c)/d, (a*(b - c))/d, <br> &nbsp;(a + b - c)/d, (a*b - c)/d, (a - b)/(c*d), <br> &nbsp;a/(b*c*d), (a*b)/(c*d), (a + b)/(c*d), <br> &nbsp;((a - b)*c)/d, (a*c)/(b*d), (a*b*c)/d, <br> &nbsp;((a + b)*c)/d, (a/b + c)/d, (a - b + c)/d, <br> &nbsp;a/((b + c)*d), (a*(b + c))/d, -((-a + b + c)/d), <br> &nbsp;(a + b + c)/d, (a*b + c)/d, (a - b*c)/d, <br> &nbsp;(a - b*c)/(b*d), (a + b*c)/d, (a - b/c)*d, <br> &nbsp;(a + b/c)*d, (a - b - c)*d, (a*d)/(b - c), <br> &nbsp;a*(b - c)*d, (a + b - c)*d, (a*b - c)*d, <br> &nbsp;((a - b)*d)/c, (a*d)/(b*c), (a*b*d)/c, <br> &nbsp;((a + b)*d)/c, (a - b)*c*d, (a*c*d)/b, a*b*c*d, <br> &nbsp;(a + b)*c*d, (a/b + c)*d, (a - b + c)*d, <br> &nbsp;(a*d)/(b + c), a*(b + c)*d, (a + b + c)*d, <br> &nbsp;(a*b + c)*d, (a - b*c)*d, ((a - b*c)*d)/b, <br> &nbsp;(a + b*c)*d, a/(b - c) + d, a*(b - c) + d, <br> &nbsp;(a - b)/c + d, a/(b*c) + d, a - b/c + d, <br> &nbsp;a*(b/c + d), a + b/c + d, (a*b)/c + d, <br> &nbsp;(a + b)/c + d, a/b - c + d, a - b - c + d, <br> &nbsp;a/(b - c + d), a*(b - c + d), a + b - c + d, <br> &nbsp;a*b - c + d, (a - b)/(c + d), a/(b*(c + d)), <br> &nbsp;(a*b)/(c + d), (a + b)/(c + d), (a - b)*(c + d), <br> &nbsp;(a*(c + d))/b, a*b*(c + d), (a + b)*(c + d), <br> &nbsp;a/b + c + d, a - b + c + d, a/(b + c + d), <br> &nbsp;a*(b + c + d), a + b + c + d, a*b + c + d, <br> &nbsp;(a*c)/b + d, a - b*c + d, a*c - b*c + d, <br> &nbsp;a/(b*c + d), a*(b*c + d), a + b*c + d, a*b*c + d, <br> &nbsp;(a + b)*c + d, a/(b + c) + d, a*(b + c) + d, <br> &nbsp;(-b + c + a*d)/d, a/(b*c - b*d), (a*d)/(-c + b*d), <br> &nbsp;(a*d)/(c + b*d), a + (b - c)*d, a - (b*d)/c, <br> &nbsp;a + (b*d)/c, a/b - c*d, a - b - c*d, <br> &nbsp;(a - b - c*d)/c, a/(b - c*d), (a*c)/(b - c*d), <br> &nbsp;a*(b - c*d), (a*(b - c*d))/c, a + b - c*d, <br> &nbsp;(a + b - c*d)/c, a*b - c*d, a/(b*d - c*d), <br> &nbsp;a/b + c*d, a - b + c*d, a/(b + c*d), <br> &nbsp;(a*c)/(b + c*d), a*(b + c*d), a + b + c*d, <br> &nbsp;a*b + c*d, a - b*c*d, a + b*c*d, a + (-b + c)*d, <br> &nbsp;a - (b + c)*d, a + (b + c)*d, a + b/(-c + d), <br> &nbsp;a + b*(-c + d), a - b/(c + d), a + b/(c + d), <br> &nbsp;a - b*(c + d), (a - b*(c + d))/b, a + b*(c + d), <br> &nbsp;a - (c + b*d)/d, a - (b + c*d)/c}]]></description>
        <author>S.Yu.Gubanov</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94413</guid>
        <pubDate>Thu, 17 Oct 2002 07:44:51 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94413</link>
        <description><![CDATA[S.Yu.Gubanov: Дошло как скобки расставить...<br>У Вас есть выражение <br><br>aXbYcZd,<br><br>где a,b,c,d - переменные (числа), X,Y,Z - операции '+','-','*','/'.<br>Скобки можно поставить всего лишь пятью способами<br>(((aXb)Yc)Zd)<br>((aX(bYc))Zd)<br>((aXb)Y(cZd))<br>(aX((bYc)Zd))<br>(aX(bY(cZd)))<br><br>Значит програмка, которую я привел выше модифицируется на чуть чуть<br>function AddBracket(s: string): string;<br>begin<br> &nbsp;Result := '((('+s[1]+s[2]+s[3]+')'+s[4]+s[5]+')'+s[6]+s[7]+'), ';<br> &nbsp;Result := Result + '(('+s[1]+s[2]+'('+s[3]+s[4]+s[5]+'))'+s[6]+s[7]+'), ';<br> &nbsp;Result := Result + '(('+s[1]+s[2]+s[3]+')'+s[4]+'('+s[5]+s[6]+s[7]+')), ';<br> &nbsp;Result := Result + '('+s[1]+s[2]+'(('+s[3]+s[4]+s[5]+')'+s[6]+s[7]+')), ';<br> &nbsp;Result := Result + '('+s[1]+s[2]+'('+s[3]+s[4]+'('+s[5]+s[6]+s[7]+'))), ';<br>end;<br><br>procedure TForm1.Generator(s: string);<br>begin<br> &nbsp;case Length(s) of<br> &nbsp; &nbsp;1: begin<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'+b');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'-b');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'*b');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'/b');<br> &nbsp; &nbsp; &nbsp; end;<br> &nbsp; &nbsp;3: begin<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'+c'); // Length -&gt; 5<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'-c');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'*c');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'/c');<br> &nbsp; &nbsp; &nbsp; end;<br> &nbsp; &nbsp;5: begin<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'+d'); // Length -&gt; 7<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'-d');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'*d');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'/d');<br> &nbsp; &nbsp; &nbsp; end;<br> &nbsp; &nbsp;else ResultStr := ResultStr + AddBracket(s);<br> &nbsp;end;<br>end;<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>var s: string;<br>begin<br> &nbsp;Memo1.Clear;<br> &nbsp;ResultStr := '{';<br> &nbsp;s := 'a';<br> &nbsp;Generator(s);<br> &nbsp;SetLength(ResultStr, Length(ResultStr)-2);<br> &nbsp;ResultStr := ResultStr + '}';<br> &nbsp;Memo1.Lines.Add(ResultStr);<br>end;<br><br>Ответ содержит 64*5 = 320 чисел<br>ResultStr = {(((a+b)+c)+d), ((a+(b+c))+d), ((a+b)+(c+d)), (a+((b+c)+d)), (a+(b+(c+d))), (((a+b)+c)-d), ((a+(b+c))-d), ((a+b)+(c-d)), (a+((b+c)-d)), (a+(b+(c-d))), (((a+b)+c)*d), ((a+(b+c))*d), ((a+b)+(c*d)), (a+((b+c)*d)), (a+(b+(c*d))), (((a+b)+c)/d), ((a+(b+c))/d), ((a+b)+(c/d)), (a+((b+c)/d)), (a+(b+(c/d))), (((a+b)-c)+d), ((a+(b-c))+d), ((a+b)-(c+d)), (a+((b-c)+d)), (a+(b-(c+d))), (((a+b)-c)-d), ((a+(b-c))-d), ((a+b)-(c-d)), (a+((b-c)-d)), (a+(b-(c-d))), (((a+b)-c)*d), ((a+(b-c))*d), ((a+b)-(c*d)), (a+((b-c)*d)), (a+(b-(c*d))), (((a+b)-c)/d), ((a+(b-c))/d), ((a+b)-(c/d)), (a+((b-c)/d)), (a+(b-(c/d))), (((a+b)*c)+d), ((a+(b*c))+d), ((a+b)*(c+d)), (a+((b*c)+d)), (a+(b*(c+d))), (((a+b)*c)-d), ((a+(b*c))-d), ((a+b)*(c-d)), (a+((b*c)-d)), (a+(b*(c-d))), (((a+b)*c)*d), ((a+(b*c))*d), ((a+b)*(c*d)), (a+((b*c)*d)), (a+(b*(c*d))), (((a+b)*c)/d), ((a+(b*c))/d), ((a+b)*(c/d)), (a+((b*c)/d)), (a+(b*(c/d))), (((a+b)/c)+d), ((a+(b/c))+d), ((a+b)/(c+d)), (a+((b/c)+d)), (a+(b/(c+d))), (((a+b)/c)-d), ((a+(b/c))-d), ((a+b)/(c-d)), (a+((b/c)-d)), (a+(b/(c-d))), (((a+b)/c)*d), ((a+(b/c))*d), ((a+b)/(c*d)), (a+((b/c)*d)), (a+(b/(c*d))), (((a+b)/c)/d), ((a+(b/c))/d), ((a+b)/(c/d)), (a+((b/c)/d)), (a+(b/(c/d))), (((a-b)+c)+d), ((a-(b+c))+d), ((a-b)+(c+d)), (a-((b+c)+d)), (a-(b+(c+d))), (((a-b)+c)-d), ((a-(b+c))-d), ((a-b)+(c-d)), (a-((b+c)-d)), (a-(b+(c-d))), (((a-b)+c)*d), ((a-(b+c))*d), ((a-b)+(c*d)), (a-((b+c)*d)), (a-(b+(c*d))), (((a-b)+c)/d), ((a-(b+c))/d), ((a-b)+(c/d)), (a-((b+c)/d)), (a-(b+(c/d))), (((a-b)-c)+d), ((a-(b-c))+d), ((a-b)-(c+d)), (a-((b-c)+d)), (a-(b-(c+d))), (((a-b)-c)-d), ((a-(b-c))-d), ((a-b)-(c-d)), (a-((b-c)-d)), (a-(b-(c-d))), (((a-b)-c)*d), ((a-(b-c))*d), ((a-b)-(c*d)), (a-((b-c)*d)), (a-(b-(c*d))), (((a-b)-c)/d), ((a-(b-c))/d), ((a-b)-(c/d)), (a-((b-c)/d)), (a-(b-(c/d))), (((a-b)*c)+d), ((a-(b*c))+d), ((a-b)*(c+d)), (a-((b*c)+d)), (a-(b*(c+d))), (((a-b)*c)-d), ((a-(b*c))-d), ((a-b)*(c-d)), (a-((b*c)-d)), (a-(b*(c-d))), (((a-b)*c)*d), ((a-(b*c))*d), ((a-b)*(c*d)), (a-((b*c)*d)), (a-(b*(c*d))), (((a-b)*c)/d), ((a-(b*c))/d), ((a-b)*(c/d)), (a-((b*c)/d)), (a-(b*(c/d))), (((a-b)/c)+d), ((a-(b/c))+d), ((a-b)/(c+d)), (a-((b/c)+d)), (a-(b/(c+d))), (((a-b)/c)-d), ((a-(b/c))-d), ((a-b)/(c-d)), (a-((b/c)-d)), (a-(b/(c-d))), (((a-b)/c)*d), ((a-(b/c))*d), ((a-b)/(c*d)), (a-((b/c)*d)), (a-(b/(c*d))), (((a-b)/c)/d), ((a-(b/c))/d), ((a-b)/(c/d)), (a-((b/c)/d)), (a-(b/(c/d))), (((a*b)+c)+d), ((a*(b+c))+d), ((a*b)+(c+d)), (a*((b+c)+d)), (a*(b+(c+d))), (((a*b)+c)-d), ((a*(b+c))-d), ((a*b)+(c-d)), (a*((b+c)-d)), (a*(b+(c-d))), (((a*b)+c)*d), ((a*(b+c))*d), ((a*b)+(c*d)), (a*((b+c)*d)), (a*(b+(c*d))), (((a*b)+c)/d), ((a*(b+c))/d), ((a*b)+(c/d)), (a*((b+c)/d)), (a*(b+(c/d))), (((a*b)-c)+d), ((a*(b-c))+d), ((a*b)-(c+d)), (a*((b-c)+d)), (a*(b-(c+d))), (((a*b)-c)-d), ((a*(b-c))-d), ((a*b)-(c-d)), (a*((b-c)-d)), (a*(b-(c-d))), (((a*b)-c)*d), ((a*(b-c))*d), ((a*b)-(c*d)), (a*((b-c)*d)), (a*(b-(c*d))), (((a*b)-c)/d), ((a*(b-c))/d), ((a*b)-(c/d)), (a*((b-c)/d)), (a*(b-(c/d))), (((a*b)*c)+d), ((a*(b*c))+d), ((a*b)*(c+d)), (a*((b*c)+d)), (a*(b*(c+d))), (((a*b)*c)-d), ((a*(b*c))-d), ((a*b)*(c-d)), (a*((b*c)-d)), (a*(b*(c-d))), (((a*b)*c)*d), ((a*(b*c))*d), ((a*b)*(c*d)), (a*((b*c)*d)), (a*(b*(c*d))), (((a*b)*c)/d), ((a*(b*c))/d), ((a*b)*(c/d)), (a*((b*c)/d)), (a*(b*(c/d))), (((a*b)/c)+d), ((a*(b/c))+d), ((a*b)/(c+d)), (a*((b/c)+d)), (a*(b/(c+d))), (((a*b)/c)-d), ((a*(b/c))-d), ((a*b)/(c-d)), (a*((b/c)-d)), (a*(b/(c-d))), (((a*b)/c)*d), ((a*(b/c))*d), ((a*b)/(c*d)), (a*((b/c)*d)), (a*(b/(c*d))), (((a*b)/c)/d), ((a*(b/c))/d), ((a*b)/(c/d)), (a*((b/c)/d)), (a*(b/(c/d))), (((a/b)+c)+d), ((a/(b+c))+d), ((a/b)+(c+d)), (a/((b+c)+d)), (a/(b+(c+d))), (((a/b)+c)-d), ((a/(b+c))-d), ((a/b)+(c-d)), (a/((b+c)-d)), (a/(b+(c-d))), (((a/b)+c)*d), ((a/(b+c))*d), ((a/b)+(c*d)), (a/((b+c)*d)), (a/(b+(c*d))), (((a/b)+c)/d), ((a/(b+c))/d), ((a/b)+(c/d)), (a/((b+c)/d)), (a/(b+(c/d))), (((a/b)-c)+d), ((a/(b-c))+d), ((a/b)-(c+d)), (a/((b-c)+d)), (a/(b-(c+d))), (((a/b)-c)-d), ((a/(b-c))-d), ((a/b)-(c-d)), (a/((b-c)-d)), (a/(b-(c-d))), (((a/b)-c)*d), ((a/(b-c))*d), ((a/b)-(c*d)), (a/((b-c)*d)), (a/(b-(c*d))), (((a/b)-c)/d), ((a/(b-c))/d), ((a/b)-(c/d)), (a/((b-c)/d)), (a/(b-(c/d))), (((a/b)*c)+d), ((a/(b*c))+d), ((a/b)*(c+d)), (a/((b*c)+d)), (a/(b*(c+d))), (((a/b)*c)-d), ((a/(b*c))-d), ((a/b)*(c-d)), (a/((b*c)-d)), (a/(b*(c-d))), (((a/b)*c)*d), ((a/(b*c))*d), ((a/b)*(c*d)), (a/((b*c)*d)), (a/(b*(c*d))), (((a/b)*c)/d), ((a/(b*c))/d), ((a/b)*(c/d)), (a/((b*c)/d)), (a/(b*(c/d))), (((a/b)/c)+d), ((a/(b/c))+d), ((a/b)/(c+d)), (a/((b/c)+d)), (a/(b/(c+d))), (((a/b)/c)-d), ((a/(b/c))-d), ((a/b)/(c-d)), (a/((b/c)-d)), (a/(b/(c-d))), (((a/b)/c)*d), ((a/(b/c))*d), ((a/b)/(c*d)), (a/((b/c)*d)), (a/(b/(c*d))), (((a/b)/c)/d), ((a/(b/c))/d), ((a/b)/(c/d)), (a/((b/c)/d)), (a/(b/(c/d)))};<br><br>]]></description>
        <author>S.Yu.Gubanov</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94412</guid>
        <pubDate>Thu, 17 Oct 2002 07:04:36 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94412</link>
        <description><![CDATA[esperanto: смотри - четыре числа -) между ними три операции<br>каждая операция - четыре варианта<br>всего 4 в степепи 3 вариантов 64<br><br>как делать - рассмотрим все трехзначные цифры тринарного алфавита<br>0-1-2-3 это цифры<br>вот все цифры которые мы можем получить<br>000<br>001<br>002<br>003<br>---<br>---<br>322<br>323<br>330<br>331<br>332<br>333<br><br>и так поставим в соответствие каждой цифре операцию <br>1-умножить<br>0-делить и т.п<br><br>а теперь в тройном цикле по каждой из цифр цисла<br>ты подставляешь операции и провиряешь<br><br>примерно так<br><br>int a1,a2,a3,a4;<br>int i,j,k;<br>int rez, tmp;<br><br>for (i=0;i&lt;4;i++)<br> &nbsp; &nbsp;for(j=0;j&lt;4;j++)<br> &nbsp; &nbsp; &nbsp; &nbsp;for(k=0;k&lt;4;k++)<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(i==0) tmp=a1*a2;<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(i==1) tmp=a1+a2;<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(i==3) tmp=a1/a2;<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(j==0) tmp=tmp*a3;<br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(j==3) tmp=tmp/a3;<br>и так далее скобки тоже можно добавит<br>можно сделать проще но для этого надо ввести указатели на функции<br><br>с наилучшими<br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br><br> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(i==0) <br><br>]]></description>
        <author>esperanto</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94411</guid>
        <pubDate>Thu, 17 Oct 2002 07:03:03 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94411</link>
        <description><![CDATA[S.Yu.Gubanov: Прикольная задача. Однажды в универе одна фирма устраивала рекламную акцию среди студентов. Тот кто сможет из номера своего студенческого билета с помощью операций +,-,*,/,(,) составить число равное номеру лицензии этой фирмы наибольшим числом способов, тот получит в подарок компьютер...У меня в то время студака уже не было, так что я не решал.<br><br>Вот если сначала решить без скобок... тогда можно попробовать так:<br><br>procedure TForm1.Generator(s: string);<br>begin<br> &nbsp;case Length(s) of<br> &nbsp; &nbsp;1: begin<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'+b');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'-b');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'*b');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'/b');<br> &nbsp; &nbsp; &nbsp; end;<br> &nbsp; &nbsp;3: begin<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'+c'); <br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'-c');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'*c');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'/c');<br> &nbsp; &nbsp; &nbsp; end;<br> &nbsp; &nbsp;5: begin<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'+d'); <br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'-d');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'*d');<br> &nbsp; &nbsp; &nbsp; &nbsp; Generator(s+'/d');<br> &nbsp; &nbsp; &nbsp; end;<br> &nbsp; &nbsp;else ResultStr := ResultStr + s + ', ';<br> &nbsp;end;<br>end;<br><br>procedure TForm1.Button1Click(Sender: TObject);<br>var s: string;<br>begin<br> &nbsp;Memo1.Clear;<br> &nbsp;ResultStr := '{';<br> &nbsp;s := 'a';<br> &nbsp;Generator(s);<br> &nbsp;SetLength(ResultStr, Length(ResultStr)-2);<br> &nbsp;ResultStr := ResultStr + '}';<br> &nbsp;Memo1.Lines.Add(ResultStr);<br>end;<br><br>В результате получим 4^3 = 64 разных значения<br>ResultStr = {a+b+c+d, a+b+c-d, a+b+c*d, a+b+c/d, a+b-c+d, a+b-c-d, a+b-c*d, a+b-c/d, a+b*c+d, a+b*c-d, a+b*c*d, a+b*c/d, a+b/c+d, a+b/c-d, a+b/c*d, a+b/c/d, a-b+c+d, a-b+c-d, a-b+c*d, a-b+c/d, a-b-c+d, a-b-c-d, a-b-c*d, a-b-c/d, a-b*c+d, a-b*c-d, a-b*c*d, a-b*c/d, a-b/c+d, a-b/c-d, a-b/c*d, a-b/c/d, a*b+c+d, a*b+c-d, a*b+c*d, a*b+c/d, a*b-c+d, a*b-c-d, a*b-c*d, a*b-c/d, a*b*c+d, a*b*c-d, a*b*c*d, a*b*c/d, a*b/c+d, a*b/c-d, a*b/c*d, a*b/c/d, a/b+c+d, a/b+c-d, a/b+c*d, a/b+c/d, a/b-c+d, a/b-c-d, a/b-c*d, a/b-c/d, a/b*c+d, a/b*c-d, a/b*c*d, a/b*c/d, a/b/c+d, a/b/c-d, a/b/c*d, a/b/c/d}<br>Эту строку потом засунуть в Mathematica, придать буквам a,b,c,d числовые значения и узнать результат...<br>Со скобками надо подумать...<br>]]></description>
        <author>S.Yu.Gubanov</author>
        <category>Алгоритмы</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94410</guid>
        <pubDate>Thu, 17 Oct 2002 05:32:24 +0000</pubDate>
        <title>Перебор...</title>
        <link>https://forum.sources.ru/index.php?showtopic=9835&amp;view=findpost&amp;p=94410</link>
        <description><![CDATA[X3J16: Даны четыре числа плюс какой-то результат. Используя операторы +, -, *, / и скобки для изменения приоритета, как определить можно ли получить данный результат из этих четырех чисел? Задача на перебор, но голова отказывается работать... Выручайте, люди, и всем заранее спасибо!<br><br>X3J16]]></description>
        <author>X3J16</author>
        <category>Алгоритмы</category>
      </item>
	
      </channel>
      </rss>
	