网易编程题六,最大的奇约数(递推计算)
2017-03-24 17:05
357 查看
最大的奇约数(递推计算)
小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11.
现在给出一个N,需要求出 f(1) + f(2) + f(3).......f(N)
例如: N = 7
f(1) + f(2) + f(3) + f(4) + f(5) + f(6) + f(7) = 1 + 1 + 3 + 1 + 5 + 3 + 7 = 21
小易计算这个问题遇到了困难,需要你来设计一个算法帮助他。
输入描述:
输出描述:
输入例子:
输出例子:
递推式在代码中一目了然
代码:
小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11.
现在给出一个N,需要求出 f(1) + f(2) + f(3).......f(N)
例如: N = 7
f(1) + f(2) + f(3) + f(4) + f(5) + f(6) + f(7) = 1 + 1 + 3 + 1 + 5 + 3 + 7 = 21
小易计算这个问题遇到了困难,需要你来设计一个算法帮助他。
输入描述:
输入一个整数N (1 ≤ N ≤ 1000000000)
输出描述:
输出一个整数,即为f(1) + f(2) + f(3).......f(N)
输入例子:
7
输出例子:
21
递推式在代码中一目了然
代码:
#include <iostream> using namespace std; long long f(int n) { if (n == 1)return 1; long long a = (n + 1) / 2; return f(n / 2) + a*a; } int main() { int n; cin >> n; cout << f(n); return 0; }
相关文章推荐
- 网易数据分析2017编程题——最大奇数的约数和,Python内存优化
- 【Python】 网易笔试编程题( 最大的奇约数)
- 网易秋招编程题——最大的奇约数
- [编程题]最大的奇约数
- 【HDU5750 BestCoder Round 84D】【数学 贪心 复杂度计算】Dertouzos 范围有多少数的最大真约数为d
- 网易秋招编程题——计算糖果
- 网易2018编程题_求能力值的最大乘积
- 网易2017校园招聘笔试题 最大的奇约数
- 网易面试题之小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11. 现在给出一个N,需要求
- 网易编程-最大的奇数约数c++实现
- 【牛客网】【网易2016研发工程师编程题】【辗转相除法求最大公约数】
- 网易面试题之小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11. 现在给出一个N,需要求
- 网易面试题之小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11. 现在给出一个N,需要求
- [编程题] 最大的奇约数
- 网易编程题八,计算糖果(计算)
- 计算n个数的最大共约数和最小公倍数
- 网易面试题之小易是一个数论爱好者,并且对于一个数的奇数约数十分感兴趣。一天小易遇到这样一个问题: 定义函数f(x)为x最大的奇数约数,x为正整数。 例如:f(44) = 11. 现在给出一个N,需要求
- 【Python】 网易笔试编程题(计算糖果)
- 女友校招笔试编程题:网易测试岗-买苹果和求最大奇约数
- 网易笔试题:最大的奇约数