题解 | rin和快速迭代
rin和快速迭代
https://www.nowcoder.com/practice/a797241b43f34ed4a9ef6018747c30b1
核心解题思路:在每一对因数中,必有一个因数小于x的平方根,另一个因数大于x的平方根,因此只要知道小因数的个数求出大因数的个数
例如:12
1、2、3都小于3.46(12的平方根)
4、6、12都大于3.46
def divisors_count(x):
count=0
limit=int(x**0.5)
for i in range(1,limit+1):
if x%i==0:
count+=1
if i!=x//i:
count+=1
return count
x=int(input())
count1=0
while (x>2):
x=divisors_count(x)
count1+=1
print(count1)
查看20道真题和解析