Перейти к содержанию

Определение задачи и её решение.


Рекомендуемые сообщения

Опубликовано

Дамы и господа, мальчики и девочки -

 

Разрешите представить вам труд многомесячной работы творческого арифметического коллектива по теме "как сложить ровно 100 из того что было". Интереснейшее было цифровое путешествие, весьма сложная задачка - и не уверен, что в будущем получится придумать похожие по сложности и трудоёмкости прочие арифметические забавы. Что там было и как мы учились "карательной арифметики" - эти упражнения все достаточно тщательно расписаны уже ранее, достаточно потыкать по ссылкам на нашем фанклуб-форуме.

 

Здесь же и сразу хочу сформулировать эту архисложную арифметическую задачку:

 

Из каких десятичных наборов цифр при помощи простейших арифметических операций: плюс, минус, умножить, разделить, степень и корень (включая дробные и отрицательные степени и корни), да плюс факториал - из каких десятичных комбинаций невозможно получить ровно "100" ?  Переставлять цифры запрещено, склеивать вместе - можно.

 

Например-1:

 

0210 = 10^2  -- так нельзя! Двойку переставлять назад не позволяется.

 

0210:   (0!/2)(10) = (1/2)(10) = 10^2 = 100  -- а вот так можно. // кстати, там был корень 1/2-степени - это допускается.

 

Внимание! В дальнейшем знак корня '√' заменяю на символ 'V' ради уменьшения энтропии вычислений.

 

Например-2:  отличный пример как можно вычислять в рамках условия задачки:

 

17206:    1/7*(-20+6!) = 1/7*(-20+720) = 1/7*700 =100

 

Например-3:

 

Простые комбинации.. Ну, например, 12345 и обратно - пример с конкатенациями (слепкой) цифр и факториалами, а второй вообще какой-то очень простой..

 

12345:    12/3-4!+5! = 100

54321:    5*4*(3+2)*1 = 100

 

Например-4:  Да просто возьмите номерной знак своего автомобиля (или рядом стоящего транспортного средства) - и попробуйте из этих цифр в условиях этой задачки получить ровно 100. Склеивать цифры можно, переставлять нельзя!

  • Like (+1) 1
Опубликовано

Как и откуда пришла идея этой задачки? - уже рассказывал. Просто в путешествиях в разные страны иногда приходится стоять в адских пробках (наши столичные пробки на этом фоне - просто незначительные проблемки). И там от нечего делать арифметически превращал номерные знаки соседних автомобилей в сотню - а что ещё делать, если всю почту прочитал, да все интересные интернеты осмотрел? Длинный и местами мож-быть интересный рассказ про это - вон там по ссылке.

 

Вот, например, никаких пробок - но по немецкому автобану A5 (из Франкфурта на север) едет ушастый Запорожец с номерным знаком "968 77" (буквы не важны). // фотка сделана мной в сентябре 2013.

zapor-de-2013.jpg

 

Что можно сказать про его номерной знак 96877 ? А разное! - вот, например:

 

96877:    (9-6)!+87+7 = 100

96877:    V(9)+6!/8+V(7*7) = 100

96877:    -V(9)!-6+8*(7+7) = 100

 

Так вот, подумалось - а из каких комбинаций цифр невозможно сооружить ровно "100" ?

  • Like (+1) 1
Опубликовано

Поскольку изначально задачка "сложить 100 арифметически из набора цифр" возникла из автомобильных номерных знаков, то оттуда и последовало направление решения. Ведь номерные знаки в России содержат 6 или 5 цифр (номер+регион), то я начал замечать, что практически вообще все 6-значные номера складываются с сотню (или же успевают уехать в даль до момента решения), а вот с пятизнаками иногда бывает сложнее...

 

То есть, первоначальнао задача была только про шестизнаки... А ещё ранее, в самом первом изложении - тогда было страшно браться за шестизнаки с нулём в начале. Например, "012345" - сейчас это легкота: 0*1+(2+3)*4*5 = 100, а вот тогда нули в начале комбинации страшили.. Посему, изначально задача звучала вот так:

 

Можно ли из любых шести последовательных цифр (за исключением первого нуля) при помощи операций плюс, минус, умножить, разделить, возведения в степень, корней, факториалов и скобок получить ровно 100? "Склеивать" цифры можно, переставлять местами - нет.

  • Like (+1) 2
Опубликовано

Поскольку здесь в данной ветке приводится именно решение задачки, а не процесс её решения (это увлекательнейшее арифметическое путешествие - в параллельных ветках, начиная вот отсюда) - то сразу сообщаю, что задачка была целиком и полностью освоена. Наверняка, что-то могли пропустить, где-то ошибиться, что-то неправильно подсчитать - но результат есть. И он такой. От "однознаков" - до выхода на "всё решабельно".

 

1. Однознаки от "0" до "9" - число "100" получить из такого можно только по щучьему велению. Или же в бутылке джина найти джинна.

 

2. Двузнаки от "00" до "99" - аналогично. 100 = 5*4*5 или же "двузнак+цифра". Всё на этом, решений нет.

 

3. Трёхзнаки (решение здесь). Всего таких тысяча (что неудивительно). Решить получилось 140 (14%), не получилось 860.

 

4. Четырёхзнаки (подробности смотреть здесь). На момент написания этого текста не нашлось решений для 2736 нерешённых вариантов (27.4%).

 

5. Пятизнаки! - арифметически слабонервным сюда не заглядывать! Из 100-тысяч вариантов не удалось превратить в "100" только 1134 пятизнака =  1.134% от всех возможных комбинаций // окончательный результат "1134" ещё может поменяться...

 

6. Шестизнаки "123456", с чего всё начиналось. Не смогли найти решение только для 35 из миллиона возможных комбинаций! То есть, не решено 0,0035% из всего набора вариантов. Вот такая "карательная арифметика"...

 

7. Дальше - ... ну, совсем быстрее (если применять заранее наработанный арифметический арсенал). В "100" не складываются только две комбинации: 0000000 и 0000001.

 

8-и-далее-знаки:  все такие решаются в "100". И всё на этом.

 

Но кому интересно - далее в сжатом виде будет представлен результаты всего полугодового труда нашего арифметического коллектива. Само собой, мы работали "в факультативном режиме" (в свободное от работы, да), но всё же полгода цифровых упражнений и в результате достойный ответ на поставленную задачку - ай, какие молодцы!

  • Like (+1) 1
  • Спасибо (+1) 1
Опубликовано

Теперь же настало время объяснить методы решения задачки превращения произвольных последовательностей цифр ровно с сотню "100". Изначально мы отталкивались от задачки про шестизнаки ("123456" - так "исторически сложилось"), то пытались найти оптимальные методы её решения.

 

 "abcdef" == 100.

 

Само собой, вручную подсчитывать (или программно код настраивать на) весь этот миллион вариантов от 000000 до 999999 = ухандокаться можно, то следует искать оптимизации. // Сразу отвечаю на вопрос: ИИ-шницы на вопрос о подобной задачке все жидко обгадились, поскольку это уникальное упражнение - и подглядеть ответ просто негде.

 

Итак, "в лоб решать" миллион вариантов - нужны тысячи "арифметических рабов". Код сооружать - не очень понятно как. ИИ-шница не в помощь. То есть, очень правильное место для применения своих личных человеческих хомо-сапиенских мозгов. Будем строить фильтры, которые помогут нам отсеять ненужное - а остальное будет решать "вручную".

 

Как строить эти фильтры? - некоторое время потратили на обсуждения и эксперименты. Затем пришли к выводу, что нужны разноуровневые фильтры, которые будут примерно как в горнорудном производстве "обогащать руду". И для шестизнаков первый фильтр (или "фильтр первого уровня") - это разбиение шести цифр на два трёхзнака.

 

 "abc"+"def" == 100.

 

Фильтр-1 работает так:

- разбиваем шестизнак на два трёхзнака.

- если из "abc" можно получить десятку "010", а "def" = "002" или "010", то:

 

 "010" * "010" = "010" ^ "002" = 100

- для таких комбинаций задачка решена, их можно отфильтровать сразу.

 

Более того, если "def" есть не просто "002", а степень двойки - то такие тоже можно отфильтровать сразу и навсегда:

 

 V(V("010"^"008")) = V(V(V("010"^"016"))) = V(V(V(V("010"^"032")))) = ... = 100

 

То есть, для любого натурального 'n' => V(...V("10"^2^n)...) = 100

 

 

Итого, чтобы из всего миллиона шестизнаков оставить для дальнейшей работы значительно поменьше миллиона нужно найти все "не-010-трёхзнаки" ("abc") - и все "не-002^n - и не-010" трёхзнаки ("def").

 

// зачем так подробно расписываю? - чтобы потом не вспоминать что, зачем и почему :)

  • Like (+1) 2
Опубликовано

Теперь же нам следует найти все трёхзнаки "abc", которые не превращаются в "010" - чтобы потом отфильтровывать их в последующих вычислениях. А также найти все трёхзнаки "не-002", а потом из них получить "не-002^n" ...

 

// здесь и далее терминами "не-xx" называются двузнаки "ab", из которых нельзя получить число/цифру "xx". Аналогично "не-xxx" и "не-xxxx" - те "abc"/"abcd", из которых нельзя получить "xxx"/"xxxx". // Пятизнаки "не-ххххх" и далее "не-xxxxx..." не потребуются.

 

То есть,

 

// "не-02,05" = двузнаки, из которых не получаются ни 2, ни 5.

// "не-005,009" = трёхзнаки, не дающие ни 5, ни 9.

 

Итак, нужно выяснить какие "abc" невозможно арифметически превратить в "010". Например,

 

 123:  никак не превращается в десятку.

 321:  3^2+1 = 10   <-- а этот превращается!

 

Брать всю тысячу комбинаций и тупо её решать - можно, но долго и дорого... // В самом начале так и делал, но потом оптимизировал.

 

И далее будет про оптимизацию фильтрации. // о как! :)

  • Like (+1) 2
Опубликовано

Для дальнейших арифметических упражнений нам потребуются следующие навыки:

 

1. Арифметическая угадайка. Умение видеть разные комбинации. И не просто "6+7+87 = 100", а более изощрённые. Например,

 

  2771:      2*(7*7+1) = 100
  17820:    V(17+8)*20 = 100

 

2. Арифметический арсенал. Потребуются библиотеки комбинаций "не-ab", "не-abc", "не-abcd" - и производные из них, вроде "не-01-02-05" и типа того.

 

Например, есть комбинация "8712xx". Какие "xx" можно отфильтровать?

 

8!/7!*1+2 = 10   --- то есть, можно сразу выбросить все "xx", которые дают "02^n" или "10" (примеры см. выше). А также:

87+(1+2)!+"07" = 100  --- то есть, можно выбросить все "xx", которые дают "07". То есть ==>

 

Для решения всех комбинаций "8712xx" потребуется фильтр:

 

  8712xx:    8!/7!*1+2 = 10, 87+(1+2)!+"07" = 100          "не-02^n,07,10" = 6 штук.

 

И вот эти "6 штук" для ручного перебора будем доставать из "арсенала".

 

3. Таблицы умножения степеней и факториалов. А как иначе угадать, что:

 

  (6!-5!)/6 = 100

  V(7!+7!-80) = 100

 

- ну, и так далее. А там такие арифметические лабиринты с минотаврами - аж закачаешься!

 

4. Арифметическая магия, на всём этом устроенная:

 

1065:       (1-0!/6)*5! = 100

4269:       4*(-2+V(6!+9)) = 100

5116:        5!*(1-1/6) = 100

26767:     -2-6/7+6!/7 = 100

72766:      (7!-(-2+7)!)/6-6! = 100

776777:    (7!-7!/6) / (7*7-7) = 100

 

- и так далее! Много и обширно.

  • Like (+1) 1
  • Спасибо (+1) 1
Опубликовано
17 часов назад, E.K. сказал:

3. Таблицы умножения степеней и факториалов.

Арифметические "угадайки и магия" - понятия абстрактные, - а вот корни-степени-факториалы и их таблицы вполне конкретны, и на этой базе можно нужно построить арифметический инструментарий, который в дальнейшем активно используется. Вот, например:

 

Простейшие и весьма часто используемые приёмы:

 

6^2+2^6 = 6*6+8*8 = 100

5!-7-7-6 = 100
5*5!/6 = 100
(6!-5!)/6 = 100
(6!-20)/7 = 100

6!/8 = 90

 

6!/7!  и (7!)V(n^8!) = весьма полезные методы избавления от "лишней" цифры:

 

700*(6!/7!) = 100
V(V( (7!)V(10)^8! )) = 100

 

// Увы, кубические и прочие корни "степени-n", а также дробные корни таблицы МойОфис не поддерживают, посему для проверки подобных вычислений мною использовался онлайн-сервис "Вольфрам-Альфа".

 

// А также! Совсем забыл заметить, что в таблицах МойОфис есть уникальная возможность использовать запись "n!" для факториалов,  а не "ФАКТР(n)", а для квадратных корней возможна запись "V(n)" вместо КОРЕНЬ(n) - что значительно ускоряет работу с вычислениями, где постоянно встречаются корни и факториалы.

 

Продолжаю -> Разные прочие "пляски" с делением степеней и факториалов - очень полезный инструмент в безнадёжных арифметических ситуациях:

 

7!/8/6-5 = 100
70^2/7/7 = 100

 

Отрицательные и кратные степени и корни - также отличная помощь в арифметических тупиках.

 

(1/10)^-2 = 100
(6/(6!-5!))^-1 = 100

 

И так далее, различные полезный арифметический инструментарий:


(-6!+7!-6!)/6^2 = 100
V(7^6)-3^5 = 100
(7!-5!)/6-6! = 100
(7+1/7)*(7+7) = 100
(7!-5!)/6-6! = 100
V(1+7!/6)+V(1+7!) = 100

 

Очень полезные методы для вычисления "не-11, не-12":

 

V(1+5!) = 11
V(4!+5!) = 12
V(6!/5) = 12

 

Само собой, список подобных инструментов не заканчивается - в дальнейшем они будут "всплывать" по мере изложения материала.

  • Спасибо (+1) 2
Опубликовано
32 минуты назад, E.K. сказал:

(7/(6!-5!))^-1 = 100

Очепятка: (6/(6!-5!))^-1 = 100

  • Согласен 1
Опубликовано
21 час назад, E.K. сказал:

2. Арифметический арсенал. Потребуются библиотеки комбинаций "не-ab", "не-abc", "не-abcd" - и производные из них

Библиотеки необходимого арифметического медикамента сейчас начну накидывать вон в той ветке Lib-12-123-1234, а пока же надо определиться с некоторыми правилами и условными обозначеними.

 

Повторюсь, что вот такой записью: "0n", "00n", "000n" - так обозначается число 'n', полученное (или не полученное если "не-0n, не-00n, не-000n") из двузнака, трёхзнака и четырёхзнака. Пятизнаки и далее не потребуются.

 

Скобками [...] вот такими: "не ...[n]..." - выделяется решение или число 'n', которое подходит под вычисления, но никак не улучшает работу конкретного фильтра.

 

Цифровая оптимизация.  

 

Если мы без конкатенаций получили единицу "1", то она автоматически перекрывает "0", поскольку 0! = 1.

Если получили двойку "2", то перекрывается "4", так как V(4)=2.

Если получена шестёрка "6", то автоматом фильтр работает на "3" и "9", так как V(9)! = 3! = 6.

 

То есть, фильтр "не-02" сильнее фильтра "не-04" - и если уже есть "не-02", то четвёрку можно игнорировать. Так же "не-06" перекрывает "не-03,09", а "не-03" сильнее "не-09".

 

Цветовая дифференциация.

 

Чёрным жирным на общем фоне выделяются цифры, которые дают оптимизицию фильтров и решений.

 

Красным цветом выделяются не решённые и проблемные комбинации. Например, решения, где вопреки оптимизации потребовалась конкатенация цифр, вроде такого:

 

  62147:    V(6-2)+14*7 = 100        

  62047:    V((6!-20)^V(4))/7 = 100

 

- в данном примере хотелось бы сразу решить также комбинацию 62047 через правило "0!" = 1, однако по причине конкатенации "14" здесь это не работает. А вот стоящая отдельно "2" легко превращается в четвёрку и (6-2) = (6-V(4)) => это сразу решение для комбинации 64147.


Зелёным выделяется сложное, прикольное, необычное, понравившееся.

 

Вроде всё на этом с обозначениями...

  • Спасибо (+1) 1
Опубликовано

Библиотеки "не-12" и "не-123" подсчитаны, результаты представлены по ссылкам Lib-12 и Lib-123. Также для Lib-12 есть скрипты, которые высчитывают все возможные комбинации "не-xx,yy,zz,..." - очень полезный инструмент для дальнейшей работы. // Надеюсь, что для Lib-123 такое тоже появится.

 

UPD: Спасибо santax == шайтан-скрипт-123 опубликован.

 

При подсчёте Lib-12 никаких арифметических сюрпризов не обнаружено... ну, может быть, только за несколькими исключениями:

 

48:               4!/8 = 3
15/51:         V(1+5!) = 11
45/54:         V(4!+5!) = 12
65:               V(6!/5)    = 12

 

А вот трёхзнаки порадовали обилием необычных комбинаций. Думаю, что будет полезно их здесь привести.

 

Как неожиданно получились двойки и двойка в степени:


656:    V(6!/5)/6 = 2                            // V(144)/6 = 12/6 
786:    (7!/8!)^-6 = 262144 = 2^18    // вот такая степень двойки... "002^n".

 

-= 003 =-  далее про тройки, четвёрки и так далее.

 

226:    V(2^-2)*6 = 3          // игры с отрицательными степенями.
262:    V(2/6)^-2 = 3        
585:    5!/8/5 = 3                // не сразу было замечено, что 4!/8 = 3.
747:    V(V(74+7)) = 3        // V(V(81)) = 3, аналогичные решения для 756 и других.
828:    (8/2)!/8 = 3             // тоже вариации на тему "4!/8".
848:    (8/V(4))!/8 = 3

 

-= 004 =-

 

548:    V(5!+4!)-8 = 4          // 5!+4! = 144  -- пригодилось в самых разных ситуациях.
558:    V(5!/5-8) = 4
658:    V(6!/5)-8 = 4            // 6!/4 = тоже 144.
728:    V(V( (7!)V(2^8!) ))    // необычная трактовка V(V(n^8)) = n^2.
825:    V(V(8*2^5)) = 4       // так тоже бывает со степенями двойки..
858:    V((8+5!)/8) = 4        // 5!+8 = 128, очень удобно в некоторых ситуациях.
872:    8!/7!/2 = 4              // игры с факториалами и дробями - часто бывает полезно.

 

-= 005 =-

 

187:        V(18+7) = 5        // иногда мимо внимания проскакивают совершенно очевидные комбинации.
257/457:    V(2^5-7) = 5
625:        V(V(625)) = 5      // таблицу степеней и факториалов всегда полезно держать где-то рядом :)

646:        6!/4!/6 = 5          // и снова факториалы и дроби.
657:        V(6!/5)-7 = 5

 

-= 006 =-

 

747:    V(V(74+7))! = 6        // если из 81 получается 3, то, очевидно, и 6 тоже можно получить.

 

-= 007 =-

 

175:    V(-V(1+7!)+5!) = 7    // полезная магия: 5!-71 = 49.
571:    V(5!-V(7!+1)) = 7

 

627:    V(6!^-2)*7! = 7         // нетривиальный выкрутас через факториал и отрицательную степень.
672:    V((6!/7!)^-2) = 7

 

267:    V(V(V(V(V(V( (2^-6)V(7) )))))) = 7    // такое тоже случается...
647:    V(V( (6/4!)V(7) )) = 7
674:    V(V( (6)V(7^4!) )) = 7

 

838:    8!/(3!)!/8 = 7        // факториалы и корни.
858:    -8+5!/8 = 7
868:    8!/6!/8 = 7

 

-= 008 =-

 

381:    V(V(3^8))-1 = 8      // ну, и разное прочее в ассортименте!
647:    V(64)!/7! = 8
748:    V(7!^-V(4))*8! = 8
785:    V(-7*8+5!) = 8

259:    V(25)+V(9) = 8

278:    V(V(V(V(V(V(V( (2^-7)V(8) ))))))) = 8

366:    V((3/6)^-6) = 8
370:    V(-3!+70) = 8

456:    V( 4+V(5*6!) ) = 8

515:    5!/15 = 8
526:    V( (5!)V(2^6!) ) = 8

535:    5!/3/5 = 8

556:    V(5!-56) = 8
565:    V(-56+5!) = 8
577:    V(57+7) = 8
578:    V(5!-7*8) = 8

758:    -7+5!/8 = 8
782:    V((7!/8!)^-2) = 8

825:    V(V(V(V(V(8^2^5))))) = 8
858:    V(V(8^5/8)) = 8
885:    V(V(... 15 V(8^8^5) ... )) = 8

 

-= 009 =-

 

223:    V( (2^-2)V(3) ) = 9
232:    (2/3!)^-2 = 9
262:    (2/6)^-2 = 9
268:    V(V((2/6)^-8)) = 9

457:    V(4!+57) = 9
468:    V(V((V(4)/6)^-8)) = 9
486:    4!/8+6 = 9

574:    V(57+4!) = 9

644:    V(6^4)/4 = 9
684:    V(V(6^8))/4 = 9

689:    V(6!/8-9) = 9
748:    (7+V(4))!/8! = 9

 

-= 010 =-

 

151:    V(1+5!)-1 = 10
476:    V(4!+76) = 10
652:    V(6!/5)-2 = 10
672:    6!/72 = 10
748:    7+4!/8 = 10

 

-= 011 =-

 

277:    V(2^7-7) = 11
455:    V(-4+5!+5) = 11
456:    V(-4+V(5^6)) = 11
555:    V(5!+5/5) = 11
610:    V((6-1)!+0!) = 11
727:    V(-7+2^7) = 11
756:    V(7+5!-6) = 11
956:    -9+5!/6 = 11

 

-= 012 =-

 

188:    V(18*8) = 12
555:    V(5!+5!/5) = 12
556:    V(5!/5*6) = 12
565:    V(5!*6/5) = 12
757:    V(7!/5/7) = 12
818:    V(8*18) = 12
839:    V(8*3*V(9)!) = 12
885:    V(V(8+8)!+5!) = 12
967:    9!/6/7! = 12
976:    9!/7!/6 = 12

  • Like (+1) 1
  • Спасибо (+1) 1
  • 3 недели спустя...
Опубликовано

123456=100 == Работа полностью закончена. Не смогли найти решения для 35 шестизнаков.

 

000000                      000201
000001                      000211
000002
000003
000006
000007    000107
000012
000013    000113
000016    000116
000017    000117
000021    000121
000023    000123
000026    000126
000030    000130
000031    000131
000060    000160    001160
000061    000161
000070    000170
000071    000171

 

== 35.

 

// Само собой, если подключить кратные факториалы, суперфакториалы и прочих арифметических демонов - то всё решается на раз-два-сто. Но это не вписывается в изначальное условие задачки. Посему - да! Но, увы, нет.

  • Спасибо (+1) 1
Опубликовано

Всего шестизнаков == 1 миллион штук. Не смогли найти решения только для 35 из миллиона возможных комбинаций! То есть, не решено 0,0035% из всего набора вариантов. Вот такая "карательная арифметика"... // Архив шестизнаков "123456" и "с чего всё начиналось" здесь, второй проход "вторая дистилляция" - вот по этой ссылке.

 

На втором проходе ставились две задачи:

 

1. Оптимизировать фильтрацию заведомо решабельных комбинаций.

2. Проверить качество первого прохода, найти косяки и баги.

 

Обе задачи выполнены полностью.

 

1. "Второе поколение" фильтров, да вычисления на базе всего накопленного арифметического арсенала - всё это вместе работает в 2-3 раза более эффективно.

 

2. Были обнаружены косяки - вроде такого: "abc1ef" решается с конкатенацией "1", а вот для "0" решение забыли показать. Не стал акцентировать внимание на этих заусенцах... Надеюсь, что на втором проходе всё было сделано аккуратнее - и все подобные огрехи закрыты.

 

А также разные арифметически-магические причуды начинают встречаться именно на первом... не побоюсь сказать - тестовом - проходе "123456=100".

Опубликовано

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

 

Здесь же подведу итоги "боевых действий" - но только против шестизнаков "abcdef". Они раскладываются на "010" ~ "002^n, 010" - об этом уже вещал подробно.

 

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

 

 

V(V(10^8)) = 100

 

При первом проходе этого "арифметического туннеля" не сразу, но было замечено, что -

 

    V(V(10^8)) = 100

 

- и эта тема была затем продолжена в сторону V(V(...(10^2^n)...)) = 100  -- что значительно сберегло вычислительные ресурсы и время при втором проходе "арифметического туннеля".

 

 

{ 5,5,6 } = 100

 

Такой набор, если он начинается с пятёрки, гарантированно даёт 100.

 

     5!*5/6 = 120*5/6 = 100
     5!/6*5 = 120/6*5 = 100

 

// отсюда же сразу следуют правила:

     5!*(1-1/6) = 120-20 = 100
     5!/(1+1/5) = 120/1,2 = 100

- но о них чуть позже.

 

Расставляя скобки в правильном порядке - можно собирать работающие решения в довольно сложных случаях. Очень помогает! Примеров использования очень много.

 

 

(6!-5!)/6 - безграничные возможности на эту тему!

 

     (6!-5!)/6 = (720-120)/6 = 600/6 = 100

 

А также вариации в том же стиле:

 

     (6!-6!/6)/6 = 100

 

Работает в очень многих случаях, даже в фильтрах:

 

     6767xx:    (6!-7!/6/7)/"06" = 100

 

Получает дальнейшее развитие, если обе части дроби умножить на 7 ->

 

     (7!-7!/6) / 42 = 100

 

Работает примерно вот так:


     776771:    (7!-7!/6) / (7*(7-1)) = 100
     776777:    (7!-7!/6) / (7*7-7)) = 100

 

 

(6!-20)/7 = 100

 

При работе над шестизнаками также впервые была опробована конфигурация: (6!-20)/7 = 100 (и производные от неё (6!+1)/7-3 = (6!-6)/7-2 = 100). Работает отлично!

 

     000267:    -0!-0!+(-(0!+2)!+6!)/7 = 100
     411067:    -4+1+(1+0+6!)/7    = 100
     677777:    (-6-7-7+7!/7)/7 = 100
     767177:    (-7+6!-7+1-7)/7 = 100
     767707:    (-7+6!-7-7+0!)/7 = 100
     771767:    (-7-7+1-7+6!)/7 = 100

 

- и в других многих случаях тоже да.

 

 

Пришло время превращения 5! в 100 через дроби. 

Работает это примерно так:

 

     5!*(1-1/6) = 120*5/6 = 100
     5!/(1+1/5) = 120/1,2 = 100

 

Работает даже для четырёхзнаков (очевидно) -

 

     5115:    5!/(1+1/5) = 100
     5116:    5!*(1-1/6) = 100

 

В шестизнаках помогало достаточно регулярно:

 

     000606:    (0+0!-0!/6)*(-0!+6)! = 100
     006161:    (0-0!+6)!*(-1/6+1) = 100
     007106:    (-0!-0!+7)!*(1-0!/6) = 100
     071106:    (-0!+7-1)!*(1-0!/6) = 100
     618001:    (6-1)!*(-V(8+0!)!^-0!+1) = 100
     711106:    (7-1-1)!*(1-0!/6) = 100
     711161:    (7-1-1)!*(-1/6+1) = 100

 

 

Похожая конфигурация для 6!-тёрок =>  

 

     6!/(7+1/5) = 720/7,2 = 100

 

Помогает! И даже в фильтрах:
 

     6751xx:    6!/(7+5^-1) = 100

 

- и в самых разных замороченных комбинациях:

 

     000157:    ((0!+0!+0!)!)!/(1/5+7) = 100
     002157:    ((0+0!+2)!)!/(1/5+7) = 100
     061167:    0+6!/(1/(-1+6)+7) = 100
     071167:    (-0!+7)!/(1/(-1+6)+7) = 100
     171167:    (-1+7)!/(1/(-1+6)+7) = 100

 

 

Ещё один арифметический фокус с семёрками:

 

     (7+7)*(1/7+7) = 1 + 49 + 1 + 49 = 100

 

Помогает в некоторых тяжёлых (и на первый взгляд безнадёжных) случаях:

 

     767777:    ((7-6)/7+7)*(7+7) = 100
     771707:    (7+7)*(1/7+0+7) = 100
     771717:    (7+7)*(1/7+1*7) = 100
     771776:    (7+7)*(1/7+7!/6!) = 100

 

... и прочее.

  • Спасибо (+1) 1
Опубликовано

Разная прочая обнаружена арифметическая магия с 7-1 / 7-6-1:

 

     71 + V(7!/6+1) = 100

 

И даже более того, чтобы уж совсем без конкатенаций!

 

     V(7!+1) + V(7!/6+1) = 100

 

Она позволяет без мешающих склеиваний цифр решать вот такие случаи:

 

     711167:    71+V(1+1/6*7!) = 100
     711760:    71+V(1+7!/6)+0 = 100
     711761:    71+V(1+7!/6)*1 = 100

 

Прочая магия в фильтрах:

 

     6761xx:    -6!+(7!-(6-1)!)/"06" = 100
     6766xx:    V(-6!+7!-6!)/"06" = 10

 

 

Дробные корни и отрицательные степени:

 

- тоже были разрешены и приветствуются! Примеров много и разных, особенно при решении "000xxx" - там обильно!

 

     001261:    (0!/(0!+1))V(2*(6-1)) = 100
     618001:    (6-1)!*(-V(8+0!)!^-0!+1) = 100
     067611:    0+6!/(7+(6-1)^-"01") = 100

 

Выкрутасы разные на эту тему:

 

     002007:    V(V((0!+0!)/20)^-(0!+7)) = 100

 

Решается даже вот такое:

 

     000202:    (0!/(0!+0!))V(20/2) = 100

 

Да просто красиво!

 

     437868:    (4!/3!)!+78+6-8 = 100
     670001:    (6!/ (V(7!+0!)+0!) ) ^ (0!+1) = 100    // V(7!+0!) = 71
     710067:    7*100*6!/7! = 100
     711167:    71+V(1+1/6*7!) = 100
     767777:    76+(77/7-7)! = 100
     767781:    76+(V(7*7)-V(8+1))! = 100
     767781:    7*6+7*7+8+1 = 100

 

Вот такой арифметический кордебалет, однако! :)

  • Спасибо (+1) 1

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • E.K.
      Автор E.K.
      6xxx - также весьма непростая цифра (как и "семёрка") - выше по списку вроде бы полегче должно быть. А пока вот так с фильтром:
       
      60xx/61xx              ???                             = все 100 на перебор.
      62xx                        ???                             = 100.
      63xx/66xx/69xx    ???                             = 100.
      64xx                        6+4 = 10                   not "02^n,10" = 14.
      65xx                        (6!-5!)/"06" = 100     not "06" = 26    // -6+5!-"14" = 100 -- практически без оптимизации.
      67xx                        ???                             = 100.
      68xx                        6!/8+"10" = 100       not "10" = 76.
       
      Заодно:  6^2 + 2^6 = 100. Можно добавить фильтр:
       
          6^2 = 6^V(4) = 6*6 = V(V(6^8)) = 36.
          2^3! = 2^6 = 2^V(9)! = V(4)... = 8*8 = 64.
       
      Но фильтр какой-то слабоватый получается: 23, 26, 29, 43, 46, 49, 82, 84, 88.

      Итого на обсчёт == 516 штук. Вот они:
      !6xxx-filter.txt
    • E.K.
      Автор E.K.
      9x-xx - фильтр оставляет 257 комбинаций. Всё же, наверное, 93xx-96xx-99xx удобней считать раздельно, а то табличка какая-то тяжёлая получается..
      !9xxx-filter.txt  !9xxx-filter.xods

       
      К обсчёту:
       
      9106        9200    9225    9252    9275        9300    9326    9351    9383        9456
      9136        9201    9227    9254    9276        9301    9327    9353    9385        9467
      9156        9202    9228    9255    9277        9302    9332    9356    9386        9476
      9160        9203    9230    9256    9278        9304    9333    9357    9387        9477
      9161        9204    9231    9257    9279        9305    9335    9358    9388        9478
      9165        9205    9233    9258    9283        9311    9336    9359    9389
      9166        9206    9236    9260    9285        9312    9338    9362    9393
      9167        9210    9237    9261    9286        9314    9339    9363    9395
      9172        9211    9238    9263    9289        9315    9340    9365    9396
      9174        9212    9239    9265    9293        9320    9341    9366    9398
      9176        9213    9240    9266    9296        9321    9342    9367    9399
      9177        9214    9241    9267    9297        9322    9344    9368
      9178        9215    9245    9268    9298        9323    9347    9369
      9196        9216    9247    9269    9299        9324    9350    9375
                      9220    9248    9272
                      9221    9250    9273
                      9222    9251    9274
       
      9500        9600    9639    9674        9706        9806    9867        9926
      9501        9601    9647    9675        9756        9807    9870        9927
      9510        9602    9653    9676        9760        9808    9871        9938
      9522        9606    9656    9677        9761        9817    9872        9947
      9526        9607    9657    9678        9765        9818    9874        9957
      9537        9608    9658    9680        9766        9827    9876        9958
      9546        9611    9660    9681        9767        9836    9877        9962
      9557        9612    9661    9683        9776        9847    9878        9968
      9567        9617    9663    9685        9777        9856    9880        9972
      9573        9618    9665    9686        9778        9858    9881        9974
      9575        9620    9666    9687                        9860    9885        9975
      9576        9621    9667    9689                        9861    9887        9983
      9577        9627    9668    9693                        9865    9896        9985
      9578        9633    9669    9696                        9866                    9986
      9579        9635    9670    9698
      9586        9636    9671    9699
      9587        9638    9672
      9588
      9597
    • E.K.
      Автор E.K.
      Ещё одна некомфортная и весьма трудоёмкая цифра = 7xxx. Фильтр какой-то совсем "жидкий"...
       
      70xx/71xx      ???                                         = все 100 вариантов.
      72xx/74xx      ???                                         = аналогично 100.
      73xx/79xx      7+3 = 10                               not "02^n,10" = 14.
      75xx               -7+5!-"13" = 100                  not "13" = 90.
      76xx               76+"04"! = 100                     not "04" = 56.
      77xx               ???                                          = все 100.
      78xx               V(V( (7!/8!)V("10") )) = 100    not "10" = 76.
       
      == 536 штук к ручному обсчёту... Вот здесь они все:
      !7xxx-filter.txt
       
      // Для 78xx - традиционно Вольфрам-проверка:

    • E.K.
      Автор E.K.
      Оглядываясь на решения 9xxx - думается, что нужно просто ещё раз внимательно посмотреть на оцифровку 8xxx (и далее 7-6-5...) - и либо найти "потеряшек", выяснить недоработки - либо же согласиться, что "всё так и было". Предпочитаю всё же пройтись по всей программе, поскольку я - перфекционист! И очень уважаю качественно сделанную (доделанную) работу. Итого -
       
      Начинаю. Верхний фильтр для 8xxx очень хорош... и на этом практически всё. Смотрите сами:
       
      V(...V( (8^-n)V("10") )...) = 100.        not "10" = 76.
       
      То есть, любая комбинация 8x-"10" автоматически превращается ровно в 100. Даже с нулём, Вольфрам иногда врёт, но не в этом случае:
       

       
      Ну, и далее, если не верите, "2" сразу закрывает "4", а "6" покрывает "3,9" ->
          
       
      А также:

       
      На "8810" Вольфрам начал подтормаживать...

       
      Но всё же справился!

    • E.K.
      Автор E.K.
      Даже быстрым взлядом зыркнуть в наши изначальные ... потуги - сразу видно, что можно было делать аккуратней, уверенней, оптимальней и быстрее. Да плюс "четверознаки" - это же тоже интересно! И требуют повторной дистилляции.
       
      Возражений нет?
×
×
  • Создать...