题目描述
输入M、N,1 < M < N <
1000000,求区间[M,N]内的所有素数的个数。素数定义:除了1以外,只能被1和自己整除的自然数称为素数 输入描述: 两个整数M,N
输出描述: 区间内素数的个数
解法一:常规解法
def prime(m, n):
prime_list = []
for i in range(m, n):
for j in range(2, i):
if i % j == 0:
break
else:
prime_list.append(i)
return len(prime_list)
解法二:使用python内置函数filter过滤
def all_prime_number(m, n):
filter_list = filter(lambda x: not [x % i for i in range(2, x) if x % i == 0], range(m, n))
return len(list(prime_list))