Я не знаю каким образом Вам задаются параметры
и
и велики ли они?
Параметр
брали только из массива простых чисел - от 2 до 99991. Значение
- любое натуральное, но большее, чем
. Как они были собраны в пары - это не моя задача, да и мне, как программисту, это неинтересно.
Зачем выдумывать новое решение уравнения? Я его решил, решение - единственное при любом заданном
. Весь вопрос - в быстроте счета. Мне нужно увеличить скорость счета хотя бы на порядок. Числовые функции Эйлера хранятся в виде одномерного массива, их вычислять не надо. Остается только ускорить процессы возведения в степень и выявления остатков (сравнения по модулю). Но как ускорить в 10 раз - ума не приложу.
Сегодня приобрели супермашину NEC SX-9. Скорость счета возросла в тысячи раз. Теперь все ок. Использование явных выражений в 4,5 раза эффективней (по скорости), чем алгоритм Евклида. Проверено на 18 триллионах значений
и
. И запомните: явные формулы всегда эффективней "крутящихся". Всем спасибо!