数字的因子和
来源:互联网 发布:c语言 线程优先级 编辑:程序博客网 时间:2024/06/01 07:12
设有
其中
那么有
代码:
复杂度
int sum_of_divisor(int n){ int sum = 1; for(int i = 2; i*i <= n; ++i) { int temp = 1; while(n%i == 0) { temp = temp*i + 1; n /= i; } sum *= temp; } if(n > 1) sum *= n + 1; return sum;}
另外一种更耿直的方法,复杂度也是
int divisor_sum(int n){ int m = (int)sqrt(1.0 * n); int sum = 0; if(n == 1) return 1; for(int i = 1; i <= m; ++i) { if(n % i == 0) { if(n/i != i) sum += n/i + i; else//此时i*i=n,故只取一个 sum += i; } } return sum;}
阅读全文
0 0
- 数字的因子和
- 筛选求数字不包括自身的因子和
- N的因子和
- 因子和的计算方法
- 获取数字特定因子元素的个数
- LightOJ 1336 Sigma Function(1--n中所有因子和为偶数的数字个数)
- 杭电5288如何查找一个数字的最左边因子和最右边因子的下标,先处理100以下的数字,100以上的数字则是sqrt(n)
- 因子和因子个数
- 所有因子的因子个数的立方和
- POJ2992 Divisors 因子和因子个数的应用
- pku 2992 因子和因子个数的应用
- 因子和与因子个数的应用(一)
- 因子和与因子个数的应用(二)
- 求2~1000000内的数字的因子
- SPOJ 74. Divisor Summation 分解数字的因子
- EularProject 47:具有相同个数因子的连续数字
- 51nod1441 士兵的数字游戏 分解质因子
- 因子和
- java 金额数字转中文
- 设计模式之生成者与消费者模式
- 设计模式C++实现(16)——状态模式
- ShareSDK新浪微博登录提示 21338:sso package or sign error"
- SVN:Please execute the 'Cleanup' command.
- 数字的因子和
- 获得员工部门
- Android面试篇之HashMap和Hashtable的区别
- 查看某个端口的占用情况
- Essential Qt 第十八章 贪吃蛇(下)
- Python __init__.py 作用详解
- 【UVa120】Stacks of Flapjacks 模拟
- 深入理解WeakHashmap-转载
- 数据结构第五周项目-数制转换(栈)