2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1 ... 62, 63, 64, 65, 66, 67, 68 ... 215  След.
 
 Re: Пентадекатлон мечты
Сообщение28.05.2022, 05:23 
Аватара пользователя


29/04/13
8111
Богородский
VAL в сообщении #1555567 писал(а):
А я, тем временем, обновил свои таблицы. Зачем-то в параллельной теме :oops: (Именно поэтому я не хотел множить темы.)

По-прежнему желаю Вам и всем(включая себя) всё того же: внимательности. Никто же ведь не торопит.

А я тем временем после успеха так и не запустил новый поиск. По той же причине - никто не торопит.

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

M12-S2-36\M12-S2-36-548132.out:2252869147370754564640677821513423641: 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 48, valids=14

Если я смогу убрать 8 символов(2 раза по 4), это здорово сократит запись. Конечно надо будет и о других сокращениях подумать.

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение28.05.2022, 13:21 
Аватара пользователя


29/04/13
8111
Богородский
Dmitriy40
Попытался самостоятельно убрать лишние символы. Сначала всё шло хорошо, но потом прога вместо 64 папок по 720 пар стала создавать 46080 папок по паре файлов в каждой.
Я конечно это безобразие быстро прервал.

Вместо папки M12-N2-31 мне нужна была N2-31. Она же делает папки под именами N2-31-123459, N2-31-123495 и т.д. И к именам .ехе и .v файлов ещё стала справа добавлять дефис.
Я решил что надо исправить ещё и сценарный файл. Как это лучше сделать? Он короткий, так что приведу целиком.

Код:
@set INCLUDE=C:\Fasm\fasmw17330\INCLUDE
@echo off
for /f "tokens=1-5 delims=-!" %%a in (M12mods1.patterns) do @(
   echo %%b-%%c-%%d-%%e:
   if exist Yadryara5.inc del /F /Q Yadryara5.inc >nul
   if exist Yadryara5.exe del /F /Q Yadryara5.exe >nul
   if not exist %%b-%%c-%%d\. md %%b-%%c-%%d >nul
   echo %%a>%%b-%%c-%%d\%%b-%%c-%%d-%%e.v
   echo %%a>Yadryara5.gen.v
   gp -q Yadryara5.gen.gp
   if exist Yadryara5.inc fasm Yadryara5.asm
   if exist Yadryara5.exe move /Y Yadryara5.exe %%b-%%c-%%d\%%b-%%c-%%d-%%e.exe >nul
   echo.
)

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение28.05.2022, 16:12 
Заслуженный участник


20/08/14
11766
Россия, Москва
Yadryara
С одной стороны меня длинные строки не напрягают, я всегда могу их обрезать в любом текстовом редакторе заменой кусков строк на другие (или на пустые).
С другой стороны, убрать части названий откуда угодно не проблема:
Смотрите, внутри цикла в переменной %%a сидит всё что нужно записать в .v, в %%b сидит M12, в %%c сидит N2, в %%d сидит 31, в %%e сидит 123459. Соответственно в скрипте надо везде набрать из них то что нужно. В частности если не нужно M12 в названиях папок, то надо убрать %%b- (с дефисом) из строк с командами md, echo, move, но оставить там где оно входит в состав имени файла .v и .exe (если и оттуда убрать, то наверное сами уберёте по аналогии с именем папки):
Код:
@set INCLUDE=C:\Fasm\fasmw17330\INCLUDE
@echo off
for /f "tokens=1-5 delims=-!" %%a in (M12mods1.patterns) do @(
   echo %%b-%%c-%%d-%%e:
   if exist Yadryara5.inc del /F /Q Yadryara5.inc >nul
   if exist Yadryara5.exe del /F /Q Yadryara5.exe >nul
   if not exist %%c-%%d\. md %%c-%%d >nul
   echo %%a>%%c-%%d\%%b-%%c-%%d-%%e.v
   echo %%a>Yadryara5.gen.v
   gp -q Yadryara5.gen.gp
   if exist Yadryara5.inc fasm Yadryara5.asm
   if exist Yadryara5.exe move /Y Yadryara5.exe %%c-%%d\%%b-%%c-%%d-%%e.exe >nul
   echo.
)
Для быстрой проверки удобно закомментировать (командой rem в начале строк) строки начиная с "gp -q", тогда скрипт будет лишь создавать папки и писать в них файлы *.v, а это быстро (секунды).

Но убирать M12 из названий файлов не стоит — оно используется и в PARI программе перебора, для деления полного имени паттерна на части. Либо там тоже подправить (это команды strsplit/strjoin).

Дополнительно я бы советовал поправить PARI программу перебора чтобы она писала результаты не в индивидуальные файлы для каждого паттерна, а в общий файл для каждого потока, добавив в файл и имя паттерна. Это фактически поменять лишь два write в конце файла. Но лучше если приведёте его целиком, тогда вечером (сейчас уже убегаю) скажу точно что как поправить. И тогда в логах будет коротко и красиво, а на имена самих файлов можно и наплевать и оставить длинными, ведь поиск и фильтрацию можно будет делать не по именам файлов, а только по содержимому (потом напишу как именно), что проще и удобнее. Можно даже сразу рассортировать цепочки по длине в разные файлы (хотя это легко делается и потом findstr).

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение28.05.2022, 17:37 
Аватара пользователя


29/04/13
8111
Богородский
Спасибо!

Dmitriy40 в сообщении #1555730 писал(а):
в %%b сидит M12, в %%c сидит N2, в %%d сидит 31, в %%e сидит 123459.

Не-а. В %%b сидит N2, в %%c сидит 31, в %%d сидит 123459, в %%e когда-то сидело M12-.

Поэтому и был в конце пустой дефис. Ведь я ранее убрал из M12mods1.gp M12- из единственного места, поэтому переменная %%e была пуста.

Довольно сильно сократил. Вот изменённый фрагмент.

Код:
   if exist Yadryara5.inc del /F /Q Yadryara5.inc >nul
   if exist Yadryara5.exe del /F /Q Yadryara5.exe >nul
   if not exist %%b-%%c\. md %%b-%%c >nul
   echo %%a>%%b-%%c\%%d.v
   echo %%a>Yadryara5.gen.v
   gp -q Yadryara5.gen.gp
   if exist Yadryara5.inc fasm Yadryara5.asm
   if exist Yadryara5.exe move /Y Yadryara5.exe %%b-%%c\%%d.exe >nul

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

-- 28.05.2022, 17:47 --

Dmitriy40 в сообщении #1555730 писал(а):
Но лучше если приведёте его целиком,

Ну вот он как раз. Мне его рано запускать, потому что нужно как-то аккуратно и из него M12- убрать.

Код:
\\Перебор всех паттернов в каталогах от текущего и глубже
allocatemem(2^23);
start=0*10^35;\\Откуда начать
stop= 4*10^35;\\Где закончить (не включая), можно поставить 8*10^45
step=  4*10^35;\\Сколько отвести на каждый круг перебора паттернов
\\! kppat=0;kpop=0;
pat=externstr("dir /a-d /b /s M12-*.exe");\\Получаем в вектор список всех паттернов в текущей папке и всех подпапках
if(#pat==0, print("Not found patterns!"); quit);
for(i=1,#pat, s=strsplit(pat[i],"."); pat[i]=strjoin(s[1..#s-1],"."));\\Отрезаем им всем расширение
ff=vector(#pat,i, s=strsplit(pat[i],"\\");s[#s]);\\Отрезаем путь оставляя только имя файла, нужно лишь для статистики
{forstep(h=start,stop-1,step,\\Цикл по всему диапазону
  for(g=1,#pat,\\Цикл по каждому паттерну
\\!  kppat=kppat+1;print();print();print1(kppat,"   ",kpop,"      ");
      system(strprintf("title %de%d:%s",h\step,logint(step,10),strjoin(strsplit(ff[g],"-")[2..3],"-")));\\Меняем заголовок окна на 21e34:N2-36, отрезая префикс "M12-" и номер паттерна в группе, это по желанию, на работу не влияет
      read(concat(pat[g],".v"));\\Читаем параметры паттерна
      z=vector(#v,i,!issquare(v[i]));\\Сформируем вектор флагов squarefree в паттерне, какие места проверять
forstep(ii=floor(h/pp.mod),ceil((h+step-1)/pp.mod),672280000,\\Идём по интервалу с хитро (ради скорости работы) заданным шагом
         vi=extern(strexpand(pat[g],".exe ",ii," ",672280000," 2>nul"));\\Фильтруем цепочки внутри хитро заданного шага
         for(t=1,#vi,\\Все найденные на перепроверку
            n=lift(pp)+pp.mod*vi[t];\\Получаем число начала цепочки из индекса
            if(n<h || n>=h+step, next);\\Не допускаем дублирования цепочек найденных на границе шагов
\\!        kpop=kpop+1;
                   if(
            \\!   (z[1]>0 && !ispseudoprime((n+0)/v[1])) ||
            \\!   (z[2]>0 && !ispseudoprime((n+1)/v[2])) ||
            \\!   (z[3]>0 && !ispseudoprime((n+2)/v[3])) ||
               (z[4]>0 && !ispseudoprime((n+3)/v[4])) ||
               (z[5]>0 && !ispseudoprime((n+4)/v[5])) ||
               (z[6]>0 && !ispseudoprime((n+5)/v[6])) ||
               (z[7]>0 && !ispseudoprime((n+6)/v[7])) ||
               (z[8]>0 && !ispseudoprime((n+7)/v[8])) ||
               (z[9]>0 && !ispseudoprime((n+8)/v[9])) ||
               (z[10]>0 && !ispseudoprime((n+9)/v[10])) ||
               (z[11]>0 && !ispseudoprime((n+10)/v[11])) ||
               (z[12]>0 && !ispseudoprime((n+11)/v[12])) ||
           \\!   (z[13]>0 && !ispseudoprime((n+12)/v[13])) ||
           \\!   (z[14]>0 && !ispseudoprime((n+13)/v[14])) ||
           \\!   (z[15]>0 && !ispseudoprime((n+14)/v[15])) ||
           0,               next;
            );
            s=vector(15,d,numdiv(n+d-1)); k=#select(x->(x==12),s);
            if(k>=9,\\Короче  совпадений не выводить
               w=strprintf("%d:",n); f=", ALL";
               for(j=1,#v, if(v[j]>1 && s[j]!=12 && !issquare(v[j]), f=""; break));
               if(k==#v, f=concat(f,", FOUND!!!"));
               foreach(s,d, w=concat(w,strprintf("%3d,",d)));
               w=concat(w,strprintf("  valids=%d%s", k,f));
               print(ff[g],": ",w); write(concat(pat[g],".out"),w);\\Печать на экран и сохранение в файл лога .out рядом с прогой
            );
         );

      );
   );
)}
system("title All end.");\\Информируем что закончили
quit;

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение29.05.2022, 01:28 
Заслуженный участник


20/08/14
11766
Россия, Москва
Yadryara в сообщении #1555733 писал(а):
Довольно сильно сократил. Вот изменённый фрагмент.
Как-то переборщили на мой взгляд, зачем было убирать из имени файлов полное обозначение паттерна? Этим осложнили выделение имени паттерна в программах. А если потом запутаетесь от какой группы эти файлы типа 123954.exe и .v? Но дело Ваше.

Итак, в результате имеем папки "N2-31" с файлами "123459.exe" (и парными к ним .v). В приведённом .gp файле надо поправить три строки:
Код:
Было:
...
pat=externstr("dir /a-d /b /s M12-*.exe");\\Получаем в вектор список всех паттернов в текущей папке и всех подпапках
...
ff=vector(#pat,i, s=strsplit(pat[i],"\\");s[#s]);\\Отрезаем путь оставляя только имя файла, нужно лишь для статистики
...
      system(strprintf("title %de%d:%s",h\step,logint(step,10),strjoin(strsplit(ff[g],"-")[2..3],"-")));\\Меняем заголовок окна на 21e34:N2-36, отрезая префикс "M12-" и номер паттерна в группе, это по желанию, на работу не влияет
...

Стало (они же на тех же местах, вторая строка заменяется на 4 строки):
...
pat=externstr("dir /a-d /b /s *.exe");\\Получаем в вектор список всех паттернов в текущей папке и всех подпапках
...
ff=vector(#pat,i, s=strsplit(pat[i],"\\");s[#s-1..#s]);\\Отрезаем путь оставляя только последнее имя папки и имя файла
ff2=vector(#ff,i, ff[i][1]);\\Имя папки запомним отдельно, для заголовка окна
for(i=1,#ff, ff[i]=strjoin(ff[i],"-"));\\Объединим папку и файл в полное имя паттерна
step10=logint(step,10);\\Вынес из цикла для ускорения
...
      system(strprintf("title %de%d:%s",h\10^step10,step10,ff2[g]));\\Меняем заголовок окна на 21e34:N2-36, это по желанию, на работу не влияет
С указанной структурой папок и файлов я запустил, работает.

Далее, я предложил писать всё в один файл, для этого надо изменить одну строку:
Код:
Было:
               print(ff[g],": ",w); write(concat(pat[g],".out"),w);\\Печать на экран и сохранение в файл лога .out рядом с прогой
Стало:
               print(ff[g],":",w); write("Process-1.out",ff[g],":",w);\\Печать на экран и сохранение в файл лога Process-1.out, который должен быть свой (или в своей папке) для каждого потока
Имя лога разумеется может быть любым. И в любом месте диска. Но для каждого потока лог должен быть свой.
Как видно после этого и на экране и в логе будет одинаковая информация. Например такая (запустил для пары паттернов от старого комплекта):
Код:
N2-31-123456:672699725776092794004775019752512345: 12, 48, 24, 12, 24, 12, 12, 12, 12, 12, 12, 12, 24, 12, 96,  valids=10
N2-31-123564:1110764675181521264825160435274109145: 48, 48, 12, 12, 96, 12, 12, 12,  6, 12, 12, 12, 96, 48, 12,  valids=9
Соответственно добыть из такого файла только valids=13 и valids=14 можно легко и непринуждённо: findstr "valids=13 valids=14" Process-1.out.
Если же захочется добыть valids=11 и valids=12 из нескольких таких файлов (например от двух потоков), то поможет команда: type path1\Process-1.out path2\Process-2.out 2>nul | findstr "valids=11 valids=12".
Если захочется результат не на экран, а в файл Result123.txt, то добавить в конце строк переназначение вывода > Rsesult123.txt.
Разумеется деление общих файлов лога по величине valids (и по любым другим критериям) можно оформить в один .cmd скрипт и запускать лишь его.
И findstr и type вполне работают и при запущенном счёте, останавливать его для получения статистики не нужно.

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение29.05.2022, 04:25 
Аватара пользователя


29/04/13
8111
Богородский
Dmitriy40 в сообщении #1555750 писал(а):
Как-то переборщили на мой взгляд, зачем было убирать из имени файлов полное обозначение паттерна?

Всё для того же, для укорачивания записи.

Dmitriy40 в сообщении #1555750 писал(а):
Этим осложнили выделение имени паттерна в программах.

А сильно ли это тормозит прогу?

Dmitriy40 в сообщении #1555750 писал(а):
А если потом запутаетесь от какой группы эти файлы типа 123954.exe и .v?

Думал об этом. Я и раньше-то никогда не вытаскивал эти файлы из папки. Переносил и копировал только вместе с папкой. Теперь тем более не буду этого делать.

Я ещё подумал, что прога будет пытаться читать единственный неподходящий файл с такой же структурой: gp.exe. Он же ведь тоже *.exe.


Однако Вы написали
Dmitriy40 в сообщении #1555750 писал(а):
С указанной структурой папок и файлов я запустил, работает.

Поэтому всё же решил попробовать. Но нет, первая ошибка в read(concat и ошибка при попытке прочитать несуществующий файл gp.v.

Почему у Вас этой ошибки не было?

В один файл пока не буду пытаться записывать, ибо ещё не отладил предыдущее.

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение29.05.2022, 13:39 
Заслуженный участник


20/08/14
11766
Россия, Москва
Yadryara в сообщении #1555756 писал(а):
А сильно ли это тормозит прогу?
Нет, оно же однократно выполняется при запуске .gp файла.

Yadryara в сообщении #1555756 писал(а):
Я ещё подумал, что прога будет пытаться читать единственный неподходящий файл с такой же структурой: gp.exe. Он же ведь тоже *.exe.
Если он тоже в наличии в этой папке или в подпапках - да, будет. Вот потому я и советовал иметь программы (и gp.exe и fasm.exe) отдельно. И иметь имена файлов паттернов явно отличающимися от прочих программ (тем же префиксом M12).
Но и .v тоже будет лишний - Yadryara5.gen.v - он же не удаляется по окончании компиляции. Если удалите его руками (или добавите команду del /q Yadryara5.gen.v >nul в конец скрипта компиляции), то замените маску в PARI программе с *.exe на *.v, этих посторонних быть не должно.

Вот что я для тестов сделал и запускаю:
Код:
T:\M12\7>gp32 -q "M12-2.gp"
  ***   Warning: new stack size = 8388608 (8.000 Mbytes).
N2-31-123456:672699725776092794004775019752512345: 12, 48, 24, 12, 24, 12, 12, 12, 12, 12, 12, 12, 24, 12, 96,  valids=10
N2-31-123564:1110764675181521264825160435274109145: 48, 48, 12, 12, 96, 12, 12, 12,  6, 12, 12, 12, 96, 48, 12,  valids=9

T:\M12\7>dir /s /o /b *.*
T:\M12\7\N2-31
T:\M12\7\N2-56
T:\M12\7\M12-2.gp
T:\M12\7\Process-1.out
T:\M12\7\N2-31\123456.exe
T:\M12\7\N2-31\123456.v
T:\M12\7\N2-31\123564.exe
T:\M12\7\N2-31\123564.v
T:\M12\7\N2-56\654312.exe
T:\M12\7\N2-56\654312.v
T:\M12\7\N2-56\654321.exe
T:\M12\7\N2-56\654321.v

T:\M12\7>
Как видите ничего лишнего в папках нет.
Полный текст M12-2.gp уберу под кат:

(Оффтоп)

Код:
\\Перебор всех паттернов в каталогах от текущего и глубже
allocatemem(2^23);
start=0*10^35;\\Откуда начать
stop= 20*10^35;\\Где закончить (не включая), можно поставить 8*10^45
step=  4*10^35;\\Сколько отвести на каждый круг перебора паттернов
\\! kppat=0;kpop=0;
pat=externstr("dir /a-d /b /s *.v");\\Получаем в вектор список всех паттернов в текущей папке и всех подпапках
if(#pat==0, print("Not found patterns!"); quit);
for(i=1,#pat, s=strsplit(pat[i],"."); pat[i]=strjoin(s[1..#s-1],"."));\\Отрезаем им всем расширение
ff=vector(#pat,i, s=strsplit(pat[i],"\\");s[#s-1..#s]);\\Отрезаем путь оставляя только последнее имя папки и имя файла
ff2=vector(#ff,i, ff[i][1]);\\Имя папки запомним отдельно, для заголовка окна
for(i=1,#ff, ff[i]=strjoin(ff[i],"-"));\\Объединим папку и файл в полное имя паттерна
step10=logint(step,10);\\Вынес из цикла для ускорения
{forstep(h=start,stop-1,step,\\Цикл по всему диапазону
  for(g=1,#pat,\\Цикл по каждому паттерну
\\!  kppat=kppat+1;print();print();print1(kppat,"   ",kpop,"      ");
      system(strprintf("title %de%d:%s",h\10^step10,step10,ff2[g]));\\Меняем заголовок окна на 21e34:N2-36, это по желанию, на работу не влияет
      read(concat(pat[g],".v"));\\Читаем параметры паттерна
      z=vector(#v,i,!issquare(v[i]));\\Сформируем вектор флагов squarefree в паттерне, какие места проверять
forstep(ii=floor(h/pp.mod),ceil((h+step-1)/pp.mod),672280000,\\Идём по интервалу с хитро (ради скорости работы) заданным шагом
         vi=extern(strexpand(pat[g],".exe ",ii," ",672280000," 2>nul"));\\Фильтруем цепочки внутри хитро заданного шага
         for(t=1,#vi,\\Все найденные на перепроверку
            n=lift(pp)+pp.mod*vi[t];\\Получаем число начала цепочки из индекса
            if(n<h || n>=h+step, next);\\Не допускаем дублирования цепочек найденных на границе шагов
\\!        kpop=kpop+1;
                   if(
            \\!   (z[1]>0 && !ispseudoprime((n+0)/v[1])) ||
            \\!   (z[2]>0 && !ispseudoprime((n+1)/v[2])) ||
            \\!   (z[3]>0 && !ispseudoprime((n+2)/v[3])) ||
               (z[4]>0 && !ispseudoprime((n+3)/v[4])) ||
               (z[5]>0 && !ispseudoprime((n+4)/v[5])) ||
               (z[6]>0 && !ispseudoprime((n+5)/v[6])) ||
               (z[7]>0 && !ispseudoprime((n+6)/v[7])) ||
               (z[8]>0 && !ispseudoprime((n+7)/v[8])) ||
               (z[9]>0 && !ispseudoprime((n+8)/v[9])) ||
               (z[10]>0 && !ispseudoprime((n+9)/v[10])) ||
               (z[11]>0 && !ispseudoprime((n+10)/v[11])) ||
               (z[12]>0 && !ispseudoprime((n+11)/v[12])) ||
           \\!   (z[13]>0 && !ispseudoprime((n+12)/v[13])) ||
           \\!   (z[14]>0 && !ispseudoprime((n+13)/v[14])) ||
           \\!   (z[15]>0 && !ispseudoprime((n+14)/v[15])) ||
           0,               next;
            );
            s=vector(15,d,numdiv(n+d-1)); k=#select(x->(x==12),s);
            if(k>=9,\\Короче  совпадений не выводить
               w=strprintf("%d:",n); f=", ALL";
               for(j=1,#v, if(v[j]>1 && s[j]!=12 && !issquare(v[j]), f=""; break));
               if(k==#v, f=concat(f,", FOUND!!!"));
               foreach(s,d, w=concat(w,strprintf("%3d,",d)));
               w=concat(w,strprintf("  valids=%d%s", k,f));
               print(ff[g],":",w); write("Process-1.out",ff[g],":",w);\\Печать на экран и сохранение в файл лога Process-1.out, который должен быть свой (или в своей папке) для каждого потока
            );
         );

      );
   );
)}
system("title All end.");\\Информируем что закончили
quit;

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение29.05.2022, 14:17 
Аватара пользователя


29/04/13
8111
Богородский
Dmitriy40 в сообщении #1555780 писал(а):
Вот потому я и советовал иметь программы (и gp.exe и fasm.exe) отдельно.

Ну фасм и компиляция у меня давным-давно в отдельной папке. Так что эту ядряровскую дженвэху я удалил преспокойно. В нужной папке своя есть.

Dmitriy40 в сообщении #1555780 писал(а):
замените маску в PARI программе с *.exe на *.v,

Понял, заменил, перезапустил.

Хотел уже было заорать как кот Матроскин "Ура! Заработало!", но передумал пока :-)

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

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение30.05.2022, 19:14 
Заслуженный участник


27/06/08
4062
Волгоград
17668887847524548413038893976018715843277693308027547
Есть новый мировой рекорд!

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение30.05.2022, 19:24 
Аватара пользователя


11/12/16
13850
уездный город Н
VAL
Поздравляю! :appl:
Это 20-ка на 48 делителей?

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение30.05.2022, 19:49 
Заслуженный участник


27/06/08
4062
Волгоград
EUgeneUS в сообщении #1555882 писал(а):
VAL
Поздравляю! :appl:
Это 20-ка на 48 делителей?
Спасибо!

Да, 20-ка. Интересно, что получена не на моем компе, а на в 12 раз более медленном.
Я искал 20-ку на 4-х компах. До нахождения 20-ки встретилок 30 наборов по 19 из 20.
Из них 28 на моем основном и по одному на двух других. Нашлось на одном из этих двух. Он временно остался без загрузки на работе. Любопытно, что ему уже нашли новое применение и хотели у меня забрать. Но я попросил отсрочку до окончания текущего сеанса. Не окончил. Хватило обследовать 36% запланированного диапазона.

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение30.05.2022, 23:02 
Аватара пользователя


29/04/13
8111
Богородский
VAL, проздравляю! Это ведь не просто новый мировой рекорд, это абсюлютный мировой рекорд. Самая длинная в мире цепочка.

VAL в сообщении #1555885 писал(а):
До нахождения 20-ки встретилок 30 наборов по 19 из 20.

Я так понимаю, оценка вероятности не производилась, посему не можете сказать, припозднилась ли 20-ка.

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение31.05.2022, 00:47 
Заслуженный участник


27/06/08
4062
Волгоград
Yadryara в сообщении #1555895 писал(а):
Я так понимаю, оценка вероятности не производилась, посему не можете сказать, припозднилась ли 20-ка.
Проводилась. По двум разным методикам.
По одной - сильно припозднилась. Но по другой нашлась довольно рано :-)

 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение31.05.2022, 09:30 
Аватара пользователя


29/04/13
8111
Богородский
Значит по меньшей мере одна из двух методик или ошибочна или даёт очень грубую оценку.

Вот такую конструкцию смастерил. Надо спускаться всё ниже и открывать до тех пор пока не перестанет открываться. Надеюсь, понятно почему одни числа голубенькие, а другие чёрные.

(48)

$%</div>$

(1 — 2520)

$%</div>$

(2 — 201824)

$%</div>$

(3 — 5066270)

$%</div>$

(4 — 114811332)

$%</div>$

(5 — 2845915784)

$%</div>$

(6 — 85006531672)

$%</div>$

(7 — 3528339933722)

$%</div>$

(8 — 15638027885721)

$%</div>$

(9 — 638685576505820)

$%</div>$
10 — 243601189639274971$%<div class=
11 — 1593638182195428572$%<div class=
12 — 9827470582657267545$%<div class=
13 — 34169215324203592637988571$%<div class=
14 — 48529805327949285361816883330796317670888544$%<div class=
15 — $%<div class=
16 — 211522316765403479717061151138499302062797340$%<div class=
17 — 473425709539722936730401511525312918993210140$%<div class=
18 — 745234180503121551478810228987275519884890140$%<div class=
19 — 5908388043825578351730345292813071711296723319324$%<div class=
20 — 17668887847524548413038893976018715843277693308027547$%<div class=
21 — $%<div class=
22 — $%<div class=
...$%<div class=
31 — $%<div class=
 Профиль  
                  
 
 Re: Пентадекатлон мечты
Сообщение31.05.2022, 10:20 
Аватара пользователя


11/12/16
13850
уездный город Н
А паланируется ли ещё что-нибудь посчитать? У меня счёты простаивают :D

Вопрос в первую очередь адресован уважаемому Dmitriy40, так как связан с созданием ускорителей для новых цепочек.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 3218 ]  На страницу Пред.  1 ... 62, 63, 64, 65, 66, 67, 68 ... 215  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group