Я ищу способы оптимизировать мой алгоритм для решения Project Euler # 75 , две вещи, которые я сделал до сих пор,
- Проверяйте только L с четными значениями, поскольку это легко проверить.
- Сохранение значений L, которые были проверены, чтобы иметь только один способ сформировать целочисленный прямоугольный треугольник. Позже, проверяя новое значение L, я ищу делители L, которые уже проверены, чтобы иметь это качество. Если есть 2 или более делителей, то это значение пропускается. Например. 12, 30 и 40 сохраняются (24, 36 и т. Д. Не сохраняются, потому что это действительно увеличенные версии 12), поэтому, когда я вижу 60 или 120, я могу быстро определить, что их следует пропустить.
Однако мой алгоритм все еще недостаточно быстр. У вас есть другие предложения или ссылки на соответствующие статьи? Спасибо.