题解 | #查找组成一个偶数最接近的两个素数#
查找组成一个偶数最接近的两个素数
https://www.nowcoder.com/practice/f8538f9ae3f1484fb137789dec6eedb9
def is_prime(x): if x <= 2: return True else: for i in range(2, int(pow(x, 0.5)) + 1): if x % i == 0: return False else: continue return True n = int(input()) minus = float('inf') a,b = 0,0 for i in range(2,n): if is_prime(i) and is_prime(n-i) and 0 <= n - 2*i < minus: a,b = i,n-i minus = n - 2*i else: continue print(a) print(b)
先设计一个函数来判断一下i是不是素数,这样就直接找出(0,n)中所有的素数。
然后我们开始找出所有加起来为n的素数对,知道判断出差值最小的那一对就好了,这一部分就是穷举,没有什么技术含量,直接看代码就好了。