|
发表于 2020-4-12 17:17:02
|
显示全部楼层
本楼为最佳答案
这些题我昨天刚解决
- import math
- def is_prime(number):
- if number > 1:
- if number == 2:
- return True
- if number % 2 == 0:
- return False
- for each in range(3,int(math.sqrt(number) + 1),2):
- if number % each == 0:
- return False
- return True
- return False
- def get_primes(number):
- while True:
- if is_prime(number):
- yield number
- number += 1
- def solve(count):
- clist = [2]
- for next_prime in get_primes(3):
- if next_prime < count:
- clist.append(next_prime)
- else:
- return clist
- break
- def mincommul(num,nlist):
- for i in nlist:
- if not num % i:
- return [i,num // i]
- def main():
- try:
- count = int(input('count = '))
- clist1 = solve(count)
- clist2 = []
- while True:
- clist2.append(mincommul(count,clist1)[0])
- count = mincommul(count,clist1)[1]
- if count == 1:
- break
- print(clist2)
- except Exception as error:
- print('An error has occurred:' + str(error))
- if __name__ == '__main__':
- main()
复制代码 |
|