Link:http://lx.lanqiao.org/problem.page?gpid=T209
输入一个正整数N (1
样例输入
12
样例输出
6
样例说明
12的约数包括:1,2,3,4,6,12。共6个
AC code:
#include<stdio.h>
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
int main()
{
int n,cnt,m;
cnt=0;
scanf("%d",&n);
m=sqrt(n);
if(n==1)
printf("1\n");
else
{
for(int i=1;i<=m;i++)
{
if(n%i==0)
{
cnt+=2;
if(i==m&&i*i==n)
cnt--;
}
}
printf("%d\n",cnt);
}
return 0;
}

本文介绍了一种计算任意正整数N的所有约数数量的方法,并提供了完整的C++实现代码。通过遍历到N的平方根并检查是否能整除来高效计算。
607

被折叠的 条评论
为什么被折叠?



