✨ feat(eular_12.py):优化质数测试参数并修复组合数计算逻辑
✨ feat(eular_13.py):新增超大整数加法解决方案 📝 docs(eular_13.md):添加算法说明文档 ✨ feat(eular_14.py):新增Collatz序列最长链计算 📝 docs(eular_14.md):添加性能优化说明 ✨ feat(eular_15.py):新增网格路径组合数学解法 📝 docs(eular_15.md):添加组合数学详细说明 ✨ feat(eular_16.py):新增幂数字和计算功能 ✨ feat(eular_16.hs):新增Haskell版本实现
This commit is contained in:
@@ -27,7 +27,6 @@ NOTE:
|
||||
|
||||
import math
|
||||
import random
|
||||
import re
|
||||
import time
|
||||
from collections import Counter
|
||||
from functools import reduce
|
||||
@@ -74,7 +73,7 @@ def main_coding() -> None:
|
||||
n += 1
|
||||
|
||||
|
||||
def is_probable_prime(n: int, trials: int = 10) -> bool:
|
||||
def is_probable_prime(n: int, trials: int = 20) -> bool:
|
||||
"""Miller-Rabin素性测试(快速判断是否为质数)"""
|
||||
if n < 2:
|
||||
return False
|
||||
@@ -181,7 +180,8 @@ def get_prime_factors(n: int) -> dict[int | None, int]:
|
||||
|
||||
|
||||
def zuheshu(tl: list[int]) -> int:
|
||||
return reduce(lambda x, y: x * y, tl)
|
||||
xt = [x + 1 for x in tl]
|
||||
return reduce(lambda x, y: x * y, xt)
|
||||
|
||||
|
||||
@timer
|
||||
@@ -200,5 +200,7 @@ def main_math() -> None:
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print("暴力试算:")
|
||||
main_coding()
|
||||
# main_math()
|
||||
print("质因数分解:")
|
||||
main_math()
|
||||
|
||||
Reference in New Issue
Block a user