求正整數n(n>1)的質因數的個數。 相同的質因數需要重複計算。如120=2*2*2*3*5,共有5個質因數。
輸入描述:
可能有多組測試資料,每組測試資料的輸入是乙個正整數n,(1示例1輸出描述:
對於每組資料,輸出n的質因數的個數。
120
5
import math
def judge(num):
'''判斷是否是質數
:param num:
:return:
'''if num==2 or num==3:
return true
for i in range(2,math.ceil(num**0.5)):
if num%i==0:
return false
return true
def solution(num):
'''求所有質因數
:param num:
:return:
'''res=
while num>1:
for i in range(2,math.ceil(num**0.5)):
if num%i==0 and judge(i):
num//=i
break
# for和else搭配,for中迴圈完全執行完(不算break),else才執行
else:
break
return res
if __name__=='__main__':
while true:
try:
num=int(input().strip())
res=solution(num)
print(len(res))
except:
break
質因數的個數
求正整數n n 1 的質因數的個數。相同的質因數需要重複計算。如120 2 2 2 3 5,共有5個質因數。可能有多組測試資料,每組測試資料的輸入是乙個正整數n,1對於每組資料,輸出n的質因數的個數。12020055注意1不是n的質因數 若n為質數,n是n的質因數。include include c...
質因數的個數
求正整數n n 1 的質因數的個數。相同的質因數需要重複計算。如120 2 2 2 3 5,共有5個質因數。可能有多組測試資料,每組測試資料的輸入是乙個正整數n,1示例1 120 5 pat.cpp 定義控制台應用程式的 include stdafx.h include stdio.h includ...
質因數的個數
題目描述 求正整數n n 1 的質因數的個數。相同的質因數需要重複計算。如120 22235,共有5個質因數。輸入描述 可能有多組測試資料,每組測試資料的輸入是乙個正整數n,1示例1 輸入120輸出5 題目個人解析 首先了解質數,質數是除了1和它本身之外,沒有別的因數。求法與約數的個數類似。乙個數的...