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

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

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

Здесь надо бы поработать над комбинациями, где вторыми трёхзнаками являются следующие 20 5 всего три комбинации:

 

656    767
667    768
676    776
677    778
678    786
726    787
737    788
746    797
757    856
766    877

 

Ну, пожелаем всем удачи! Или всё же попробовать превратить их в "2" или "10"?

 

UPD: Как подсказал Xandr_5890, -> V(V("010"^"008")) = 100. Если же развить эту тему, то все "def", дающие степень двойки, преобразуются в [много корней V]("010"^[степень двойки]) = 100. То есть, из списка нужно вычеркнуть всё, что даёт степень двойки. То есть, вычёркиваем 667, 677, 678, 726, 737, 746, 766, 767, 768, 776, 778, 787, 788, 797, 856, 877 - а нормально отфильтровали ненужные варианты! А также 757 => (7-5)^7. Вроде больше ничего не оптимизируется. Остаются варианты:

 

656
676
786

 

Всего пять три варианта! Ура!

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

656 - начинаем! Что нам известно про эти цифры?

 

-6+56 = 50       не "002"
-6+5!-6= 108    не "008"

 

Вроде ничего больше не вижу..

 

Итак, из каких "трёхзнаков" нельзя получить ни "002", ни "008"? Надо взять уже имеющуюся в библиотеке "не-002" и отсеять оттуда восьмёрки. Там вот так получается:
image.png

 

Остаётся 8 вариантов для "ручной" обработки:

 

575656        676656
586656        726656
606656        757656
656656        786656

 

Аттач с "не-002,008". Он же отправляется в библиотеку "не 002".

aaa-not-002-008.xods

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

Остаётся 8 вариантов:

 

575656:  -5-7+56+56      
586656:  5*(8+6-6*(5-6))
606656:  (606-6!/5!)/6
656656:  -6+56-6+56

676656:  -6-7-6/6+5!-6

726656:  -7*2+6-6+5!-6

757656:  -(7-5)*7!/6!+5!-6

786656:  7*8-6-6+56

 

Вроде всё верно? Проверяем... - ура!!!

 

image.png

 

Аттач с исходниками:

xxx656.xods

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

667 - и вот тут начинаются реальные засады..

 

Помогайте! - кто как сможет... Вот что можно соорудить "красивого" и полезного из этого трёхзнака?

Опубликовано (изменено)

667 с трёхзнаками-десятками стыкуется таким образом:

abc667 ---> V(V(10^(-(-6/6 - 7)))) = V(V(10^8)) = 100

 

Аналогично 677, 726, 746, 678, 737, 766, 767, 768, 776, 778, 787, 788, 797, 856, 877  - тоже генерируют 8 (выше есть таблица) и достаточно проверять первые трёхзнаки из "не 10".

 

P.s. в таблице маленькая помарка - 726 почему-то там не дает восьмерку, хотя (7 × 2) - 6 = 8

 

Изменено пользователем Xandr_5890
  • Согласен 1
Опубликовано

"Не-010" из трёхзнаков (давайте дальше будем оперировать "010" - это из трёхзнаков, "10" - из двузнака) - так вот, "не-010" всего 222 штуки. Что-то многовато. Предлагаю попробовать вот так:

 

ab0667, ab1667, ... ab9667 - покрутить двузнаки. Например, что можно получить из 0667:

 

0667:    (0*6)!-6+7=2, (-0!+6)!-6-7=107, (0!+6)*(6+7) = 91, 0!+6+6+7=20    - то есть, остаются двузнаки, которые "not 05, 07, 09, 10".

 

"Не-05" получилось 61 штука... см. туда. Я предупреждал, что чем больше число - тем меньше будет отфильтровка. Но из "не-05" ещё можно очистить "не-07,09,10".

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

Итак, "не-05-07-09-10" получилось 30 вариантов (см. туда). Ну, есть чем заняться на выходных :) Да, изначально задачка "без нуля в начале" - но всё равно пусть будет. Вдруг пригодится?

 

UPD. И, кстати, если посмотреть на 1667 - то там логика вычислений практически такая же: 1^6-6+7=2, (-1+6)!-6-7=107, (1+6)*(6+7) = 91, 1+6+6+7=20  - то есть, можно параллельно вычислять оба варианта.

 

xxx0667.xods

Опубликовано (изменено)

 

А у меня получилось 27 штук:

00, 01, 02, 12, 20, 22, 24, 26, 35, 42, 44, 53, 56, 57, 58, 59, 62, 65, 66, 67, 68, 75, 78, 85, 86, 87, 95

Какие пропустил?

 

Файл не могу посмотреть, не открывается

 

P.S. Разобрался - 11, 21 и 88 пропустил

 

Изменено пользователем Xandr_5890
Опубликовано
2 часа назад, Xandr_5890 сказал:

Файл не могу посмотреть, не открывается

Потому что это МойОфис, а не Excel.

В таблицах МойОфиса теперь появилась возможность вставлять n! вместо FACT(n) и V(n) вместо SQRT(n). Согласитесь, что это удобнее. Где скачать МойОфис - выше была ссылка (в самом начале, где задачка формулировалась).

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

А чего ждать-то выходных? Вот решения для 0667 и 1667 -

 

xxx0667.xods

 

Не срослись только такие варианты:

 

000667    001667
010667    011667   <- но они начинаются с нуля, посему вылетают за условия задачки. А вот эти - не получаются, хоть тресни:

 

110667
111667

 

Есть добровольцы поковырять их самостоятельно? Вдруг я чего-то не заметил?

 

UPD: Ура! Спасибо за помощь! (см. чуть ниже). Решённое зачёркнуто.

 

 

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

Ай, я дятел... Не разглядел! И аналогично делаются с два варианта с нулями в начале:

 

010667:   V(V(( 0+10 )^( 6/6+7 ))) = 100

011667:   V(V(( -0!+11 )^( 6/6+7 ))) = 100

 

Спасибо!

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

Ну, что? Надо двигаться дальше - шаг за шагом ближе к цели, как говорил Великий Кормчий. Что у нас осталось по теме "667"? Да всё остальное. От "2" до "9". Но там всё проще! Смотрите сами. Из завершающего "четырёхзнака" получаются вполне "вкусные" результаты - нужно только отфильтровать заранее решаемые.

 

ab-2667    2+6+6*7=50, 26+67=93                         - если "ab"=02 или 07, то получаем сотню. То есть, надо порешать только то, что not "02,07"

 

И аналогично:

 

ab-3667    36+67=103, 3+6-6+7=10                                                not "03,10"
ab-4667    V(4)+6+6*7=50, 4+6*(-6+7)=10, V(4)^6+6*7=106         not "02,06,10"
ab-5667    5*6+67=97, 5*(6+6-7)=25, 5!-6-6-7=101                        not "01,03,04"
ab-6667    "2"^6-6+6*7=100, 6*6+67=103, 66+6*7=108                not "02,03,08"

 

О, а здесь обильно:


ab-7667    7+6*6+7=50, 7!/6!+6+7=20, 7*6+67=109, "10"^(7-6-6+7)=100    not "02,05,09,10"                

 

И далее:

 

ab-8667    8*6+6*7=90, 86+6+7=99                          not "01,10"
ab-9667    96-6+7=97, 96+6-7=95, 9+(6/6)^7=10    not "03,05,10"

 

То есть, нужно отсеять все "двузнаки", которые не дают "01", "02", "03", а потом ещё фильтрануть по ним остальные значения.

 

Всё на этом, мне пора в аэропорт..

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

Так. Отбой умно-упражнениям по теме "667". Поскольку если "abc" можно собрать в "010", то V(V("010"^"008")) = 100. Да и вообще все "def", которые можно преобразовать в степень двойки аналогично превращаются в [много корней]("010"^[степень двойки]). Значит, из списка "xxx-def" нужно вычеркнуть все, дающие степень двойки. Спасибо Xandr_5890 !

 

UPD. Об этом было сказано ещё аж вон там, но я почему-то пропустил... Предновогодние дела и прочая суета как-то снижает качество внимания.. Увы.

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

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



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

    • E.K.
      Автор E.K.
      А что у нас с "не-04", и ведь наверняка потом пригодится - и там 58 вариантов. Увы, более 50% от всего возможного. То есть, уровень фильтрации хуже половины...
       
      aa-not-04.xods
       
      00    18    45    61    74    87
      01    20    47    63    75    89
      02    21    52    65    76    90
      06    25    53    66    77    91
      07    27    54    67    78    93
      08    33    55    68    80    96
      10    35    56    69    81    98
      11    36    57    70    83    99
      12    38    58    71    85
      17    39    60    72    86
    • E.K.
      Автор E.K.
      "Не-03" = 55 комбинаций.
       
      aa-not-05-xx.xods
       
      00    23    46    61    78
      01    24    48    65    79
      05    26    49    66    82
      06    28    50    67    83
      07    29    51    68    84
      10    35    53    70    86
      11    37    55    71    87
      15    38    56    73    88
      16    42    57    75    89
      17    43    59    76    95
      22    44    60    77    97
    • E.K.
      Автор E.K.
      "Не-02" = 32 варианта.
      aa-not-02.xods
       
      06    45    61    76
      07    47    65    77
      08    52    66    78
      17    54    67    80
      18    55    70    81
      25    56    71    85
      27    58    72    87
      36    60    74    96
       
    • E.K.
      Автор E.K.
      Ну, вот нам наконец-то потребовалась четвёрка "004". Вернее, там требуется пара "не-004 и не-010", и все такие варианты можно получить из "не-010". Однако, что-то мне подсказывает, что просто "не-004" нам ещё пригодится.
       
      Итак, требуется найти все "трёхзнаки", из которых не получается "004". Ну, например, из "000" как-то вообще не видится никаких арифметических преобразований, которые в результате дают четвёрку. Сколько всего таких - и хочется весь список. Но опять перебирать 1000 возможных вариантов как-то лениво.. Хочется оптимизации. И она есть! - предложена в ветке "Обсуждение" уважаемыми  Xandr_5890 и santax - методы "двузнаков" и оптимизации цифр. А именно. Если присмотреться к этому "не-004" ->
       
      1. Оптимизация цифр.
       
      Если мы без конкатенации ("склеивания") цифр (типа "V(16)=4" или подобного) решили вариант "1bc", то очевидно подходит и "0bc", который через факториал "0! bc" сводится к уже решённому "1bc". Ещё раз обращаю внимание, только в случаях "отдельно стоящей единицы", без конкатенации цифр.
       
      Аналогично "2bc", решённое без конкатенаций, даёт и решение для "4bc" через "V(4) bc".
       
      Аналогично, если без конкатенации решено "6bc" => решается и "3! bc" => решается "V(9)! bc".
       
      То есть, сначала решаем "1bc не равно 4" - а потом из оставшегося решаем "0bc не равно 4". Затем решаем "2bc", из оставшегося ищем что там в "4bc". Дальше смотрим "6bc" => "3bc" => "9bc".
       
      Но перебирать всю сотню вариантов на каждый первый "а" из "abc" тоже не хочется. А для оптимизации этого процесса есть ->
       
      2. Метод двузнаков.
       
      У нас есть "abc". Давайте посмотрим по каждому "a" что нам наколдуется с "bc", чтобы получить искомую четвёрку? То есть, давайте сразу отфильтруем то, что заведомо решается. Вот таким образом. У нас есть а=0,1,2,...,9. Переберём их по порядку, но с учётом "оптимизации цифр" =>
       
      1+"03" = 1*"04" = -1+"05" = 4        not "03,04,05"
       
      То есть, при решении "1bc" все двузнаки, которые складываются в 03,04,05 - их надо сразу выкинуть, поскольку заведомо решаемая комбинация. Затем решаем "0" ->
       
      0 = из того, что осталось от единицы.
       
      Далее двойка =>
       
      2+"02" = -2+"06" = 4            not "02,06"
       
      Тройку пропускаем, поскольку ждём результатов решения "6". То есть, следующий ход - четвёрка.
       
      4 = из того, что осталось от двойки (без конкатенаций), но альтернативно:
      4*"01" = -4+"08" = 4            not "01,08"
       
      Далее пятая позиция:
       
      5-"01" = -5+"09" = 4            not "01,09"
       
      Шестёрка:
       
      6-"02" = -6+"10" = 4            not "02,10"
       
      Тут же сразу "3" и "9":
       
      3 = из того, что осталось от шестёрки.
      9 = из того, что осталось от тройки.
       
      Далее "7" и "8":
       
      7-"03" = V(7+"09") = 4            not "03,09" // "09" не потребуется, она перекрывается тройкой.
      8-"04" = V(8+"08") = 4            not "04,08"
       
      Вот такая логика получается у данного процесса. Интересно, насколько эффективно фильтруется изначальный материал? Сколько из 1000 изначальных вариантов останется для "ручной обработки"?
       
      Ну, поехали. Последовательность действий такая:
       
      1 => 0, 2 =>4, 5, 6 => 3 => 9, 7, 8  == готово.
       
      А также нам потребуются заранее заготовленные двузнаки:
       
      not "03,04,05" - новый, надо подсчитать... да они тут все новые.
      not "02,06"
      not "01,09"
      not "02,10"
      not "03" 
      not "04,08"
       
      Все эти комбинации новые, чуть позже займусь.
    • E.K.
      Автор E.K.
      Теперь - восьмёрки! Комбинации "не 010", которые начинаются с цифры 8 выглядят вот так:
       
      806    856    867    878
      827    858    870    880
      847    860    871    881
      852    861    876    887
      855    866    877        
       
      Их 19 штук, с какой начать? Предлагаю с самого начала.
       
      Что мы можем сделать с "806xxx" - а?
×
×
  • Создать...