描述:
把一个偶数拆成两个不同素数的和,有几种拆法呢? 现在来考虑考虑这个问题,给你一个不超过10000的正的偶数n, 计算将该数拆成两个不同的素数之和的方法数,并输出。如n=10,可以拆成3+7,只有这一种方法,因此输出1.
from __future__ import print_function import math n=12 def is_prime(n): ret = True if n > 3: for index in range(2,int(math.sqrt(n))+1): # print("prime") # print(index) # print("prime") if n % index == 0: ret = False break # print("False") else: ret = True # print("True") else: if n == 1: ret = False # print('False') else: ret = True # print('True') return ret def split_num(n): count = 0 middle = int(math.ceil(n / 2.0)) for index in range(1,middle): # print(index) if is_prime(index) and is_prime(n - index): # print(index) count += 1 return count print(split_num(n),end='')

600

被折叠的 条评论
为什么被折叠?



