题解 | #约数的个数#

约数的个数

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

#include <stdio.h>
#define num 1e9
int Kth(int k){//计算因数个数的函数
    int cnt = 0;
    int i  = 1;
    for(i = 1; i*i<k;i++)
    {
        if(k%i==0) cnt+=2;
    }
    if(i*i == k) cnt ++;
    return cnt;
}

int main() {
    int N = 0 ;
    scanf("%d",&N);
    //printf("%d",N);
    int Num[N];
    for(int i = 0;i<N;i++)
    {
        scanf("%d",&Num[i]);
    }
    for(int i = 0 ; i < N; i++)
        printf("%d\n",Kth(Num[i]));
    return 0;
}

此题需要注意暴力解法会超时,只需算到i*i< N即可

全部评论

相关推荐

04-19 11:59
门头沟学院 Java
卷不动辣24314:挂,看来不该投这个部门的
点赞 评论 收藏
分享
迟缓的斜杠青年巴比Q了:简历被投过的公司卖出去了,我前两天遇到过更离谱的,打电话来问我有没有意向报班学Java学习,服了,还拿我学校一个学长在他们那报班学了之后干了华为OD当招牌
点赞 评论 收藏
分享
昨天 22:17
北京大学
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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