题解 | #约数的个数#

约数的个数

https://www.nowcoder.com/practice/04c8a5ea209d41798d23b59f053fa4d6

from math import sqrt
from math import ceil
while True:
    try:
        times=int(input())
        list1=list(map(int,input().strip().split()))
        sum=1
        count=0
        for i in range(times):
            sum=1
            j=2
            if list1[i]==1:
                print(1)
                continue
            elif list1[i]==2:
                print(2)
                continue
            elif list1[i]==3:
                print(2)
                continue
            while j*j<=list1[i]:
                if list1[i]%j==0:
                    while list1[i]%j==0:
                        count+=1
                        list1[i]//=j
                sum*=(count+1)
                j+=1
                count=0
            if list1[i]>1:
                count+=1
                sum*=(count+1)
            print(sum)  
            count=0    
    except EOFError:
        break

全部评论

相关推荐

02-28 13:25
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
03-05 17:03
已编辑
浙江工商大学 C++
陈好好wy:整体看下来有点空空的感觉,可以把每一段项目经历都再完善一下,然后用小标题的形式写个两到三条,目前看有点太简单了,不太能看出具体在这个项目里做了什么工作。还是要尽量把自己做的工作以量化的形式体现在简历上呢。
双非本科求职如何逆袭
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务