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

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

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

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

 

Итак, работа проделана в отдельной ветке "Lib-123 решения" - там подсчитаны все оставшиеся после предварительной фильтрации комбинации и выявлены те, которые не дают "001", "002", "002^n,010", "003", ... "012".

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

Списки трёхзнаков, которые не дают "001", "002" ... - и так далее до "012".

 

"не-001" = 4 штуки.  aaa-not-001.txt

575  757  858  868


"не-002" = 25 штук.  aaa-not-002.txt

568  575  586  606  667  676  677  678  707  717  726  737  746  757  766  767  768  776  778  786  787  788  797  856  877


"не-002^n-010" = 1 и всё. Просто праздник какой-то!  aaa-not-002^n-010.txt

676


"не-003" = 64.  aaa-not-003.txt

006  056  060  061  065  066  067  076  077  106  166  176  177  506  525  545  555  556  560  561
565  566  567  572  578  606  607  617  655  656  660  661  665  666  667  670  671  676  677  706
707  717  727  736  758  760  761  766  767  770  771  776  777  780  781  787  796  826  846  857
862  864  868  886


"не-004" = 90.  aaa-not-004.txt

000  001  007  010  011  066  067  068  070  071  076  077  086  100  101  107  110  111  167  176
177  186  255  267  276  525  528  552  557  562  568  575  585  586  606  607  608  617  618  656
660  661  666  667  670  671  672  676  677  678  680  681  685  687  700  701  706  707  710  716
717  726  737  746  755  757  760  761  766  767  768  770  771  776  777  778  782  786  787  788
797  806  827  847  856  860  861  867  876  877


"не-005" = 76.  aaa-not-005.txt

000  001  010  011  067  077  078  087  100  101  110  111  177  222  228  242  253  256  259  266
268  286  288  352  358  428  468  486  626  652  658  662  668  672  682  684  685  686  707  708
717  727  747  752  755  756  760  761  767  770  771  777  778  780  781  787  807  826  828  846
853  856  857  859  860  861  866  868  870  871  877  878  882  888  952  958


"не-006" = 1. Совсем один...  aaa-not-006.txt

727


"не-007" = 75.  aaa-not-007.txt

000  001  010  011  022  100  101  110  111  122  202  212  220  221  222  224  242  244  262  264
266  268  273  275  276  279  282  286  288  383  386  422  424  442  444  466  468  475  476  479
482  486  488  525  555  560  561  572  574  576  577  585  587  626  628  646  648  652  662  664
675  682  683  684  686  826  828  846  848  852  872  874  875  882  884


"не-008" = 86.  aaa-not-008.txt

000  001  002  005  010  011  012  015  020  021  040  041  050  051  055  066  075  083  086  100
101  105  110  111  112  115  120  121  140  141  150  151  155  175  183  186  200  201  211  256
257  277  287  371  387  477  487  500  501  505  510  511  528  550  551  555  560  561  566  570
571  575  588  606  655  656  660  661  665  666  671  676  680  681  685  687  727  747  752  762
764  772  774  775  783  786


"не-009" = 180.  aaa-not-009.txt

000  001  002  003  004  005  006  011  012  013  014  015  016  020  021  030  031  040  041  050        = 55.
051  056  060  061  065  066  067  075  076  077  085  102  103  104  105  106  111  113  115  116

120  121  130  131 140 141 150 151 160 161 166 175 176 177 185

 

200  201  210   220  221  222  224  226  236  242  244  246  255  257  266  282  284  286  288             = 19.

355  367  376           400  401  410  422  424  426  436  442  444  446  466                                             = 3 + 11.

500  501  506  510  511  525  535  545  552  553  555  556  557  560  561  563  565  566  567  570       = 29.
571  575  578  580  581  585  587  593  596

 

600  601  605  606  607  610  611  616  617  650  651  655  656  657  660  661  665  666  667  670        = 27.
671  673  676  677  682  686  688

 

706  707  717  727  736  752  754  755  758  760  761  766  767  770  771  776  777  780  781  785  787  796    = 22.

826  828  838  846  848  857  862  864  868  872  875  882  884  886                                                                   = 14.


"не-010" = 205. А сколько было в изначальных обсчётах? - аж 130 = 25 штук удалось "соптимизировать".
aaa-not-010.txt

000  001  002  003  004  006  007  012  013  014  016  017  020  021  022  023  026  030  031  040        = 36.
041  057  060  061  066  067  068  070  071  075  076  077  078  085  086  088

 

103  106  107  112  113  114  116  117  120  121  123  126  130  131  140  141  157  160  161  167        = 27.
170  171  175  176  178  185  186

 

200  201  210  211  220  221  222  237  256  267  273  276  277  278  279                = 15.
300  301  310  311  333  336  357  363  365  366  383  386  393  396                        = 14.
400  401  410  411  437  456  467  473  478  479                                                        = 10.
507  517  567  570  571  576  577  580  581                                                                = 9.

 

600  601  607  608  610  611  617  618  620  621  633  636  655  657  658  660  661  663  665  666        = 36.
667  668  670  671  674  675  676  677  678  680  681  683  686  687  693  696

 

700  701  705  706  710  711  715  716  726  728  737  746  750  751  753  756  757  759  760  761        = 36.
765  766  767  768  770  771  775  776  777  778  782  784  786  787  788  797

 

806  827  847  852  855  856  858  860  861  866  867  870  871  876  877  878  880  881  887                 = 19.

 

957  983  986                                        = 3.


"не-011" = 213.  aaa-not-011.txt

000  001  002  007  008  017  018  020  021  022  024  067  068  070  071  076  077  078  080  081  086  087    = 22.

 

102  107  108  117  122  124  168  170  171  177  178  180  181  186                                                           = 14.

 

200  201  202  203  204  206  207  210  211  212  214  216  217  220  221  223  226  228  240  241            = 34.
246  248  252  257  262  264  265  266  268  282  283  284  286  288

 

302  312  336  356  363  366  369  373  376  378  393  396                                                                            = 12.

 

402  404  412  414  426  428  446  448  462  464  465  466  468  482  483  484  486                                     = 17.

 

557  575                                            = 2.

 

602  607  608  612  618  622  624  626  633  636  642  644  646  653  656  659  662  664  667  668        = 36.
670  671  673  676  677  678  679  680  681  682  684  686  687  688  693  696

 

700  701  702  706  707  708  710  711  712  717  738  752  754  755  757  760  761  766  767  768        = 33.
770  771  772  775  776  778  780  781  783  786  787  789  798

 

800  801  806  807  810  811  816  817  822  824  826  828  835  837  842  844  846  850  851  853        = 38.
855  856  860  861  865  866  867  868  870  871  876  877  878  882  884  886  887  897

936  966  976  978  996                                     = 5.


"не-012" = 140.  aaa-not-012.txt

000  001  002  003  004  007  008  010  014  017  018  020  021  027  028  030  031  040  041  060            = 28.
061  068  070  071  077  078  080  081

 

100  101  107  108  114  117  118  127  140  141  160  161  170  171  177  178  180  181  187  190  191    = 21.

 

200  201  211  267  275  278  287          367  376  377          467  478                                                           = 7+3+2.
520  521  558  563  566  567  569 575           667  676  677  678  687                                                           = 8+5.

 

700  701  707  708  710  711  717  718  720  721  728  737  748  757  762  763  764  766  767  768            = 36.
769  770  771  773  776  777  778  779  780  781  782  784  786  787  788  797

 

800  801  807  808  810  811  817  821  827  838  855  857  858  860  861  865  867  868  870  871            = 29.
872  875  876  877  878  880  881  887  898

 

977                                            = 1.

 

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

Список востребованных комбинаций "трёхзнаков" - аналогично такому же списку "двузнаков".

 

-= 001 =-

 

"не-001,002" = 2.           { 575 757 }

"не-001,003,005" = 1.    { 868 }

"не-001,006" = 0, пусто.

"не-001,007" = 0, пусто.

 

-= 002 =-

 

"не-002" = 25.

"не-002,003" =  10.        { 606  667  676  677  707  717  766  767  776  787 }
"не-002,003,005" = 4.    { 707  717  767  787 }
"не-002,003,010" = 7.    { 667  676  677  766  767  776  787 }

 

"не-002,005" = 7.           { 707  717  767  778  787  856  877 }


"не-002,006" = 0, пусто.
"не-002,007" = 0, пусто.
"не-002,008" = 4.           { 575  606  676  786 }
"не-002,010" = 19.         { 667  676  677  678  726  737  746  757  766  767  768  776  778  786  787  788  797  856  877 }

"не-002,010,011,012" = 13.    { 667  676  677  678  757  766  767  768  776  778  786  787  877 }

 

-= 003 =-

 

"не-003,004,005" = 12.                { 067  077  177  707  717  760  761  767  770  771  777  787 }

"не-003,004,005,010" = 9.           { 067  077  760  761  767  770  771  777  787 }

"не-003,004,005,010,011" = 8.    { 067  077  760  761  767  770  771  787 }

 

"не-003,005" = 19.             { 667  676  677  678  726  737  746  757  766  767  768  776  778  786  787  788  797  856  877 }

"не-003,005,007" = 2.        { 826  846 }

 

"не-003,010" = 32.           { 006  060  061  066  067  076  077  106  176  567  607  617  655  660  661  665  666  667  670  671
                                           676  677  706  760  761  766  767  770  771  776  777  787 }

 

"не-003,010,012" = 14.    { 060  061  077  567  667  676  677  766  767  770  771  776  777  787 }

 

-= 004 =-

 

"не-004,005" = 28.

"не-004,005,008,010" =              { 000 001 }

"не-004,005,010" = 16.               { 000  001  067  077  760  761  767  770  771  777  778  787  856  860  861  877 }

"не-004,005,010,012" = 12.        { 000  001  077  767  770  771  777  778  787  860  861  877 }

 

"не-004,008,010" = 14.       { 000  001  066  086  186  660  661  666  671  676  680  681  687  786 }

"не-004,008,010,012" = 5.  { 000  001  676  687  786 }

 

"не-004,009,010,011,012" = 12.        { 000  001  077  667  676  677  766  767  770  771  776  787 }


"не-004,010,012" = 38.

 

-= 005 =-

 

"не-005,009" = 33.       { 000  001  011  067  077  111  177  222  242  266  286  682  686  707  717  727  752  755  760  761
                                       767  770  771  777  780  781  787  826  828  846  857  868  882 }                          

 

"не-005,009,010,011" = 11.    { 000  001  067  077  686  760  761  767  770  771  787 }

 

"не-005,010" = 27.       { 000  001  067  077  078  222  256  658  668  686  756  760  761  767  770  771  777  778  787  856
                                       860  861  866  870  871  877  878 }

"не-005,010,012" = 16. { 000  001  077  078  767  770  771  777  778  787  860  861  870  871  877  878 }

 

-= 006 =-

 

"не-006" = 1.                  { 727 }

"не-006,012" = пусто.

 

-= 007 =-

......

 

  • 2 недели спустя...
Опубликовано

Шайтан-скрипт для lib-123, написанный на 3х языках: Perl, PowerShell и Python.

 

Этот скрипт — это инструмент для быстрого поиска общих чисел в разных списках не-xxx, которые хранятся в библиотеке lib-123.txt. 

У программы есть два режима работы, которые можно выбрать в меню:

  1. Ручной поиск: Вы вводите через запятую названия нескольких списков (например: `2, 3`). Скрипт мгновенно находит числа в комбинации не-xxx-yyy-zzz. Если какой-то из списков окажется лишним (то есть общие числа не изменятся, даже если его убрать), программа сама это определит и покажет его в квадратных скобках.
  2. Автоматический поиск (умный перебор): Скрипт сам берет абсолютно все списки из файла, комбинирует их друг с другом во всех возможных вариантах и ищет общие числа. Все найденные результаты она аккуратно записывает в один готовый текстовый файл compare-123.txt.

Скриншоты работы скрипта можно посмотреть здесь
 

compare-123.zip

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

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



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

    • E.K.
      Автор E.K.
      Теперь же осталось завершить работу по шестизнакам - проверить все комбинации, которые начинаются с двух нулей (и первые три знака не собираются в "010"). Таких семь штук:
       
      000xxx   001xxx   002xxx   003xxx   004xxx   006xxx   007xxx
       
      Начну с конца.
    • E.K.
      Автор E.K.
      Далее все шестизнаки, которые начинаются с одного нуля = 0xx-xxx (для 00x-xxx - отдельная ветка). Само собой, это весьма серьёзная задачка, которую решать будем с фильтра верхнего уровня. Во многих случаях без применения арифетическиго колдовства просто не обойтись.
       
      Хотелось бы, конечно, посчитать их вместе с 1-однознаками, но местами различия весьма значительные и получается не упрощение, а усложнение задачи. Но всё равно - подглядывать в "1xx-xxx" категорически рекомендуется.
       
      Из каких ноль-трёхзнаков не получается десятка "010"? - таких 29 штук.
      !0xx-xxx.txt
      012    030    070
      013    031    071
      014    040    075
      016    041    076
      017    057    077
      020    060    078
      021    061    085
      022    066    086
      023    067    088
      026    068
       
      Какой профит пожно получить, глядя на эти цифры? Примерно вот такой ->
      !0xx-xxx.xods
       
       

      Итого, к персональному рассмотрению = 27 комбинаций:
       
      012xxx                         030xxx-031xxx-060xxx-061xxx
      013xxx-016xxx           040xxx-041xxx
      014xxx                         057xxx                           076xxx
      017xxx                         066xxx                           077xxx
      020xxx-021xxx           067xxx                           078xxx
      022xxx                         068xxx                           086xxx
      023xxx-026xxx           070xxx-071xxx             088xxx
    • E.K.
      Автор E.K.
      Единицы 1xx-xxx на очереди. Задачка становится всё сложнее и сложнее (если идти снизу-вверх от 9xx-8xx- и так далее до 1xx и даже до 0xx). Здесь уже будет требоваться поболее арифметической магии, дробных корней и отрицательных степеней.
       
      Всего к рассмотрению = 27 комбинаций, которые не дают "010" ->
      !1xx-xxx.txt
      103    121    161
      106    123    167
      107    126    170
      112    130    171
      113    131    175
      114    140    176
      116    141    178
      117    157    185
      120    160    186
       
      Что даёт фильтрация первого уровня? - вполне достойный результат.
      !1xx-xxx.xods
       

       
      // Большая просьба более внимательно проверить выкладки - вдруг где-то не всё заметил или накосячил.
      UPD: не заметил и накосячил:   157xxx:  not "005,010,012" = 16. Исправлено.
      UPD2: добавлено:                       186xxx:  ++ 1/8*6!+"010" = 100               not "004,008,010" = 14.
      UPD3: добавлено/исправлено:  178xxx:  ++ (1+V(V(7^8)))*"002" = 100    not "002,010" = 19.
       
      Итого, к работе == 23 ветки:
       
      107xxx                     140xxx-141xxx
      112xxx                     157xxx        
      113xxx                     160xxx-161xxx
      114xxx                     167xxx
      116xxx                     170xxx-171xxx
      117xxx                     176xxx
      120xxx-121xxx       178xxx
      123xxx-126xxx       186xxx
      130xxx-131xxx
       
    • E.K.
      Автор E.K.
      Двойки 2xx-xxx = 15 штук для углублённого анализа.
       
      200   201   210   211   220   221   222   237   256   267   273   276   277   278   279
       
      Фильтр-1 работает достаточно эффективно, уполовинивая (и даже больше) дальнейшей "работы руками".
       

       
      От изначального количества "двоек" остаётся 10 штук!
       
      ==>    210   211   220   221   222    237   267   273   276    279    == 10.
    • E.K.
      Автор E.K.
      Четвёрки 4xx-xxx как-то очень легко сдались. Всего их = 10.
       
      400   401   410   411   437   456   467   473   478   479
       
      Фильтр-1 после отсева оставляет только 10 шестизнаков для ручного анализа.
      !4xx-xxx.txt  !4xx-xxx.xods

       
      V((4^-1)V(1*"010")) = 100  -- МойОфис с такой редиской не справляется, доказательство через Вольфрам:

       
      Вот такие 10 штук после фильтрации:
       
      411067  411077  411760  411761  411767  411770  411771  411777  411787    437868
       
      Решения вполне прозрачны..
      4xx-xxx.xods

       
×
×
  • Создать...