要求差值最小,那就从(n/2,n/2)开始找,让差值依次为0,2,4。
写到这里,还以为漏掉了差是奇数的情况。但2个的和为偶数,差必定也为偶数。
def is_p(n): if n==1: return 0 # range(2,2)不会产生2。可以输出2是质数 # elif n==2: # itis=1 else: for i in range(2,int(n**0.5)+1): if n%i==0: return 0 return 1 import sys for line in sys.stdin: l=line.strip() l=int(l) for i in range(l): t=int(l/2) if is_p(t-i) and is_p(t+i): print(t-i) print(t+i) break