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

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

Опубликовано
В 14.12.2025 в 09:32, E.K. сказал:

Можно ли из любых шести последовательных цифр (за исключением первого нуля)

 

В 17.12.2025 в 03:50, E.K. сказал:

Работает! Осталось ещё 899999 вариантов :)

 

А тут точно надо перебирать все 900 000 вариантов? :)  Слово "последовательных" как будто должно подразумевать некую последовательность. Например:

  • 1_2_3_4_5_6
  • 3_4_5_6_7_8
  • 11_12_13
  • 25_26_27
  • 35_40_45

 

Опубликовано
18 часов назад, santax сказал:

1. 100 это по сути 10*10. Следовательно, мы можем разбить наши шестизнаки на трехзнаки. И теперь нужно найти все комбинации ABC, которые дают значение 10.


3. Следующий шаг среди оставшихся найти те, из которых можно получить 2 (10^2). В этом случае не нужно перебирать ABC*1000+1000*ABC, их будет меньше. 

Верно! Я точно так же рассуждал.

 

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

Опубликовано
12 часов назад, Ta2i4 сказал:

А тут точно надо перебирать все 900 000 вариантов? :)  Слово "последовательных" как будто должно подразумевать некую последовательность.

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

"a b c d e f = 100. Ну, можно с ограничением "a != 0".

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

Мои рассуждения следующие:

 

100 = 10*10 = 10^2

 

То есть, надо отсеять все трёхзнаки "abc", из которых нельзя сделать 10 и все трёхзнаки "def" - из которых не получается ни 10, ни 2. Таким образом мы отфильтровываем все комбинации, которые заведомо разрешимы (пусть и не самым красивым методом).

 

Оказалось, что у меня эти таблички уже готовы - но форумный движок не даёт их подцепить... Пойду разбираться.

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

Да, с трёхзнаками, видимо, быстрее получится, чем с двухзнаками/биграммами...

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

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

Итак, 100  = 10*10 = 10^2

По ссылке чуть выше получены все "трёхзнаки", из которых нельзя получить "10", "2" и "ни 10, ни 2".

 

// В дальнейшем там в подфорумах "lib 123" и "lib 12" будут архивироваться "трёхзнаки" и "двузнаки", из которых не получились нужные значения, и которые придётся перебирать "руками".

 

То есть, отсеялись те "трёхзнаки", которые дают "10*10" и "10^2", а остались для дальнейшей фильтрации:

 

1) "не 10" + "def"

и

2) "abc" + "ни 10, ни 2"

 

Первых осталось 224 222 варианта, а вторых 20 вариантов. Итого, из миллиона возможных "abcdef" осталось 242000 для дальнейших размышлений. То есть, 75.8% уже сразу отфильтровано! Прекрасный результат, согласитесь!

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

А есть ли другие версии как решать эту задачку без "трёхзнаков"? Вдруг мы идём не по самой идеальной траектории?

Опубликовано (изменено)
45 минут назад, E.K. сказал:

Вдруг мы идём не по самой идеальной траектории?

Мне кажется, что оптимальнее разбиения набора на пару трёхзнаков ничего не получится.

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

Остается вариант "фиксированная тетраграмма + перебор биграмм", но он, по-моему, абсолютно бесперспективен

Изменено пользователем Xandr_5890
Опубликовано

Но всё же - почему бы не попробовать?
Тем паче, что я уже прошел эту дорожку... 😉

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

Итого, текущая ситуация.

 

Сразу были задумки как оптимизировать и фильтровать заведомо решаемые комбинации. Сначала попробовали "двузнаками" - но остаются переборы "четырёхзнаков" или коленвал из трёх "двузнаков" (то есть "ab"+"cdef" или "ab"+"cd"+"ef") - и такая задачка показалась непосильной. Или мы не смогли найти верный метод её решения.

 

Остаётся разбитие на два "трёхзнака": "abc"+"def". Если первый = 10, а второй 10 или 2, то получаем 100 = 10*10 = 10^2.

 

Дальше для всех трёхзнаков (1000 штук) нашли те, которые НЕ дают 10, не дают 2 и ни 2, ни 10. Это вон там в подфоруме. Всего получилось "трёхзнаков":

 

не=10 -> 222 штуки ровно.

не=2 -> 26 штук.

не={2,10} -> 20 штук.

 

Итого, 77% (!!!) комбинаций, который дают 10*10 или 10^2 отсеяно - отличный результат! Едем далее -

 

А далее попробовали подсчитать "9bc", которые "не десятки" (их всего 4 штуки осталось) - также наложили фильтры, и в результате осталось "вручную" подсчитать всего 6 вариантов. Ещё раз: из 4 тысяч возможных комбинаций, оставшихся после первой фильтрации, после второго уровня фильтров осталось всего шесть штук! И все были успешно решены (все рассуждения по этой ссылке).

 

Едем дальше! А предстоит решить (или найти нерешабельные) комбинации типа "???def", где "def" не даёт ни двойку, ни десятку.

 

Сразу напомню, что:

 

1. Все отфильтрованные комбинации (например, "abc != 002,003,005") складываются в подфорум "lib - 123". А для двузнаков (потребуется в будущем) зарезервирован подфорум "lib - 12".

 

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

 

Надеюсь, любителям арифметики есть чем заняться на длинных Новогодних выходных! :)

 

8-123456.gif

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

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



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

    • Pager
      Автор Pager
      Собственно в названии темы описана вся проблема. Подскажите, что делать?
×
×
  • Создать...