题解 | #查找组成一个偶数最接近的两个素数#

查找组成一个偶数最接近的两个素数

http://www.nowcoder.com/practice/f8538f9ae3f1484fb137789dec6eedb9

def isSuShu(x):

  if x <= 2:
      return True
  else:
      for i in range(2, int(x ** 0.5) + 1):
          if x % i == 0:
              return False
      else:
          return True

while True:

  try:

      n = int(input())

      for i in range(int(n / 2), n):
          if isSuShu(i) and isSuShu(n - i):
              print(n - i)
              print(i)
              break
  except:
      break
全部评论
未考虑多组素数的情况
2 回复 分享
发布于 2022-04-14 20:51
作者思路: 1. 必定有一个大于 n/2 2. 差最小体现在,第一个素数对,一定是差最小的
14 回复 分享
发布于 2022-07-31 12:08
从中间向两头遍历,秒啊
3 回复 分享
发布于 2022-07-03 11:31
函数里的for循环为啥到sqrt(x)+1,而不是x/2 呢?
1 回复 分享
发布于 2023-02-19 10:49 山东
哥,你别这样,显得我很傻
点赞 回复 分享
发布于 2024-07-22 20:41 上海
我还辛辛苦苦把给出数范围内的所有素数求出来,然后再去从首、尾开始做组合···期间也想过从中间开始找到的第一个就是差值最小的,但是规则没有总结合适的出来所以g了···
点赞 回复 分享
发布于 2024-03-08 18:53 福建
def is_prime_num(x): if x <= 2: return True else: count = 0 for i in range(2,(x//2)+1): if x%i == 0: count = 1 if count == 1: return False else: return True while True: try: n = int(input()) for i in range(n//2,n): if is_prime_num(i) and is_prime_num(n-i): print(n-i) print(i) break except: break
点赞 回复 分享
发布于 2023-07-29 12:02 四川
定义的函数,末尾有点问题
点赞 回复 分享
发布于 2023-05-27 18:19 湖南
怎么想到的,这脑瓜子怎么这么灵光
点赞 回复 分享
发布于 2022-10-06 12:37 四川
未把1跟n-1排除,1既不是质数也不是素数,遍历的范围应该是(n/2,n-1)
点赞 回复 分享
发布于 2022-08-23 11:11 广东
清晰明了
点赞 回复 分享
发布于 2022-03-24 17:39

相关推荐

xiaowl:1. 技能堆叠没有意义,精简下,而且里面的精通、熟练等内容,其实经不起推敲,这里可以简单写清楚你在前端、后端等领域,有哪些你自己比较经验丰富熟练的技能,以及哪些有过一定涉猎,做一定区分度 2. 项目方案有些单薄,但是这个项目本身还是有很多挑战点的,你应该思考下对于里面有难题的挑战点,你是怎么解决的,避免泛泛而谈。比如,多人编辑是一个老大难问题,包括了互斥、协作等,这里可以详细讲一讲你怎么设计解决问题的。
点赞 评论 收藏
分享
评论
81
15
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务