题目:
相同的质因数需要重复计算。如120=2*2*2*3*5,共有5个质因数。
第一段代码比第二段复杂度要低,运行时间很快。第二段是没问题的,就是速度太慢了,平台上提交不过去的!
n = int(input()) res = 0 while n > 1: flag = 1 t = int(n**0.5) for i in range(2,t+1): if n % i == 0: #求余 n /= i res += 1 flag = 0 break if flag: res += 1 break print(res)
n=int(input()) prime=int(2) num=1 if n==prime: print(n) else: while(n>prime): k=n%prime if(k==0): #print(prime) n=n/prime num+=1 else: prime+=1 print(num)