挑战:
给一个正整数num,返回小于或等于num的斐波纳契奇数之和。
斐波纳契序列中的前两个数字是1和1.序列中的每个附加数字是前面两个数字的和。斐波纳契序列的前六个数字是1,1,2,3,5和8。
例如,sumFibs(4)应该返回 5,因为斐波纳契数列中所有小于4的奇数是 1、1、3。
提示:此题不能用递归来实现斐波纳契数列。因为当num较大时,内存会溢出,推荐用数组来实现。
sumFibs(1) 应该返回一个数字。
sumFibs(1000) 应该返回 1785。
sumFibs(4000000) 应该返回 4613732。
sumFibs(4) 应该返回 5。
sumFibs(75024) 应该返回 60696。
sumFibs(75025) 应该返回 135721。
答案:
function sumFibs(num) {
var pre = 0,
now