Интересный момент: выбор последовательности чисел для проверки в программах svb и alexBlack.
Это исходный массив из 65 чисел:
Код:
4 22 58 * Potential scam. Censored * 274 319 346 355 382 391 454 517 526 535 562 634 706 778 895 * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored * * Potential scam. Censored *
Программа svb выбрала первым для проверки число 2839, а программа alexBlack выбрала первым число 3046.
Теперь, когда я выбросила из массива число 3046 и снова запустила программу alexBlack, она начала проверять число 2911 (против моего ожидания, что будет проверяться число 2839).
Приведу цитаты обоих авторов по вопросу выбора последовательности проверки.
Со страницы alexBlack (ссылка приведена чуть выше):
Цитата:
От порядка, в котором выбираются угловые элементы, сильно зависит общее время перебора. Так, для чисел Смита, если брать отсортированный по возрастанию массив чисел, лучше начинать с конца массива. Дело в том, что в этом случае для последних чисел существует меньшее количество шестерок чисел с суммой S. Так что последние числа проверяются очень быстро. Можно на каждом шаге проверять количество шестерок для всех элементов и выбирать элемент с минимальным количеством.
Со страницы svb (
http://svb.hut.ru/ALG/mag6.htm ):
Цитата:
Следующим шагом является предварительная подготовка базового набора для последующего перебора. Об этом пишет А.Чернов - в качестве критерия он предлагает выбирать начальные элементы (у меня p[1]) по минимуму шестерок с магической суммой S. Операция подсчета числа таких шестерок достаточно быстрая и делать ее можно до перебора, но я решил использовать эту операцию только в самом начале для отсечения больших чисел. Как заметила еще Н.Макарова, для каждого числа должно существовать не менее 3 шестерок с суммой S. Имеется еще одно требование к числам базового набора - каждое число должно входить хотя бы в один квадрат (4-ку элементов) с суммой 2Sc.Численный эксперимент показал, что после выполнения этого требования, количество 6-ок достаточно большое для всех элементов, поэтому я решил использовать для ранжирования элементов количество квадратов с суммой 2Sc.
Как я поняла из написанного, авторы используют разные критерии при выборе последовательности чисел для проверки. Поэтому и результат получается разный.