diff --git a/哥德巴赫高效.py b/哥德巴赫高效.py new file mode 100644 index 0000000..94a56a8 --- /dev/null +++ b/哥德巴赫高效.py @@ -0,0 +1,22 @@ +def sieve_of_eratosthenes(n): + primes = [True] * (n + 1) # 创建一个布尔列表,初始时所有元素设为True + p = 2 + while p * p <= n: + # 如果 primes[p] 未被标记为 False, 则是一个质数 + if primes[p]: + # 更新所有 p 的倍数,从 p*p 开始标记为 False + for i in range(p * p, n + 1, p): + primes[i] = False + p += 1 + + # 收集所有质数 + prime_numbers = [p for p in range(2, n + 1) if primes[p]] + return prime_numbers + + +n=int(input()) +numbers=sieve_of_eratosthenes(n) +for i in numbers: + if n-i in numbers: + print(i,n-i) + break \ No newline at end of file diff --git a/斐波那契数列.py b/斐波那契数列.py new file mode 100644 index 0000000..7f9ae00 --- /dev/null +++ b/斐波那契数列.py @@ -0,0 +1,16 @@ +# 1 1 2 3 5 +list=[] +for i in range(100000): + list.append(0) +def feibo(n): + if n==1 or n==2: + return 1 + if list[n]!=0: + return list[n] + else: + a=feibo(n-1)+feibo(n-2) + list[n]=a + return a +n=int(input()) +b=feibo(n) +print(b%(10**9+7)) \ No newline at end of file