一 因子和定义
实战题目(模板题)
因子和模板
#include<iostream>
using namespace std;
int main()
{
int i,j,t,n,sum;
cin>>t;
while(t--)
{
sum=1;
cin>>n;
if(n==1)
cout<<0<<endl;
else{
for(i=2;i*i<=n;i++)
{
if(n%i==0)
sum+=i+n/i;
}
if((i-1)*(i-1)==n)
sum=sum-i+1;
cout<<sum<<endl;}
}
return 0;
}
二 因子个数定义
实战题目
题目1链接: link.(模板题)
题目2链接: link.(有些变换的题目)
题解博客链接: link.
因子个数代码
ll get(ll x)//求因子个数
{
ll ret = 1;
for(int i = 1; i <= cnt && prim[i] <= x / prim[i]; i++)
if(x % prim[i] == 0)
{
int tmp = 0;
while(x % prim[i] == 0)
{
tmp++;
x /= prim[i];
}
ret *= tmp + 1;
}
if(x > 1) ret *= 2;
return ret;
}
三 每日共勉
宁可枝头抱香死,何曾吹落北风中。