因子和

来源:互联网 发布:电信软件有哪些 编辑:程序博客网 时间:2024/04/28 06:42
#include <stdio.h>#include <math.h>#define max 1000bool prime[max]={1,1};bool b[1005]={0,1};int a[200];void fun(){int i,j,m;m=sqrt(max+0.0001);for(i=2;i<m;i++)if(prime[i]==0)for(j=i*i;j<max;j+=i)prime[j]=1;for(i=2,j=0;i<max;i++)if(prime[i]==0)a[j++]=i;}int main(){int i,j,k,l,m,n,sum,t,pi;fun();scanf("%d",&n);n=k;for(i=0,pi=1;i<150&&(n>1);i++)if(n%a[i]==0){t=a[i];sum=1;while(n%a[i]==0){n=n/a[i];sum+=t;t=t*a[i];}pi=pi*sum;}if(n>1)pi=pi*(n+1);printf("%d\n",pi);}

原创粉丝点击