如何写一个非常高效的函数, 需要计算n! (阶乘)

superwavelet superwavelet 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
一个题目: (2^4 表示2的4次方)

说写一个函数F, 输入这个函数的是一个正整数. 这个函数先求输入正整数 n 的阶乘: n!, 然后求n!能被2 除以多少次. 比如: 7! = 7 x 6 x 5 x 4 x 3 x 2 x 1 = 5040 = 16 x 315 = 2^4 x 315. f(7) 应该返回4, 因为 7! 可以被2^4除,但是不能被 2^5 除
题目就是让写出怎样写这样一个函数的思路

是不是用到dynamic programming? 就是先把计算过的 n! 存储起来?
...全文
评论 1
收藏 已收藏
分享
返回顶部
superwavelet
C++ 语言 65,214 成员 250,514 内容