快手算法第三题质因数的数目,还能怎么优化
感觉已经足够优化了,但是还是只过了 80% 的样例,请问该题是歧视 Python嘛#笔试题目##快手##题解#import math n = int(input()) dp = [0] * (n+1) dp[2] = 1 dp[3] = 1 for i in range(4, n+1): start = 2 is_prime = True while start <= int(math.sqrt(i)): if i % start == 0: num1 = start num2 = i // start is_prime = False break start += 1 if is_prime: dp[i] = 1 else: dp[i] = dp[num1] + dp[num2] print(sum(dp))