当前位置: 首页 > wzjs >正文

巫山做网站那家好seo基础视频教程

巫山做网站那家好,seo基础视频教程,邯郸比较有名的网络推广公司,哈密网站制作公司* 详细说明* 给定一个整数作为输入。目标是找出该数的阶乘结果中末尾零的数量。 一个数 N 的阶乘是范围 [1, N] 内所有数的乘积。* * 我们知道,只有当一个数是 10 的倍数或者有因数对 (2, 5) 时,才会产生末尾零。 在任何大于 5 的数的阶乘中,…
* @详细说明* 给定一个整数作为输入。目标是找出该数的阶乘结果中末尾零的数量。
一个数 N 的阶乘是范围 [1, N] 内所有数的乘积。* * 我们知道,只有当一个数是 10 的倍数或者有因数对 (2, 5) 时,才会产生末尾零。
在任何大于 5 的数的阶乘中,该数的质因数分解里 2 的数量比 5 的数量多很多。
用一个数除以 5 的幂可以得到其因数中 5 的个数。所以,5 的个数就代表了末尾零的数量。
#include <cassert>   /// 用于断言
#include <iostream>  /// 用于输入输出操作/*** @命名空间 bit_manipulation* @brief 位操作算法*/
namespace bit_manipulation {/*** @命名空间 count_of_trailing_ciphers_in_factorial_n* @brief 用于实现 [计算 n! 中末尾零的数量](https://www.tutorialspoint.com/count-trailing-zeros-in-factorial-of-a-number-in-cplusplus) 的函数*/namespace count_of_trailing_ciphers_in_factorial_n {/*** @brief 计算阶乘末尾零的数量的函数* @param n 要计算其阶乘末尾零数量的数* @return count,n! 中末尾零的数量*/uint64_t numberOfCiphersInFactorialN(uint64_t n) {// count 用于存储 n! 中 5 的个数uint64_t count = 0;// 不断用 n 除以 5 的幂并更新 countfor (uint64_t i = 5; n / i >= 1; i *= 5) {count += static_cast<uint64_t>(n) / i;}return count;}}  // 命名空间 count_of_trailing_ciphers_in_factorial_n
}  // 命名空间 bit_manipulation/*** @brief 自测实现* @returns 无*/
static void test() {// 第一个测试std::cout << "第一个测试 ";assert(bit_manipulation::count_of_trailing_ciphers_in_factorial_n::numberOfCiphersInFactorialN(395) == 97);std::cout << "通过" << std::endl;// 第二个测试std::cout << "第二个测试 ";assert(bit_manipulation::count_of_trailing_ciphers_in_factorial_n::numberOfCiphersInFactorialN(977) == 242);std::cout << "通过" << std::endl;// 第三个测试std::cout << "第三个测试 ";assert(bit_manipulation::count_of_trailing_ciphers_in_factorial_n::numberOfCiphersInFactorialN(871) == 215);std::cout << "通过" << std::endl;// 第四个测试std::cout << "第四个测试 ";assert(bit_manipulation::count_of_trailing_ciphers_in_factorial_n::numberOfCiphersInFactorialN(239) == 57);std::cout << "通过" << std::endl;// 第五个测试std::cout << "第五个测试 ";assert(bit_manipulation::count_of_trailing_ciphers_in_factorial_n::numberOfCiphersInFactorialN(0) == 0);std::cout << "通过" << std::endl;
}/*** @brief 主函数* @returns 程序退出时返回 0*/
int main() {test();  // 运行自测实现return 0;
}

代码解释

  1. numberOfCiphersInFactorialN 函数

    • 该函数接收一个无符号 64 位整数n作为参数。
    • 使用一个for循环,不断用n除以 5 的幂(从 5 开始,每次循环乘以 5),并将商累加到count中。
    • 最后返回count,即n!中末尾零的数量。
  2. test 函数

    • 该函数用于进行自测,包含 5 个测试用例。
    • 每个测试用例使用assert宏来验证numberOfCiphersInFactorialN函数的输出是否符合预期。
    • 如果测试通过,会输出相应的信息。
  3. main 函数

    • 调用test函数进行自测。
    • 最后返回 0 表示程序正常退出。

http://www.dtcms.com/wzjs/331288.html

相关文章:

  • 深圳有哪些网站开发公司seo是对网站进行什么优化
  • 抢车票网站怎么做百度爱采购推广一个月多少钱
  • 怀化网站制作深圳百度推广公司
  • wps可以做网站吗公司网站设计定制
  • 甘肃网站建设网站制作最好用的磁力搜索器
  • 刚做的婚恋网站怎么推广怎样把自己的产品放到网上销售
  • 建设局哪个网站查证电商运营培训哪个机构好
  • 网站怎么做app吗兰州网络推广与营销
  • 如何给网站的关键词做排名seo免费培训
  • 武汉建设银行社会招聘网站手机优化
  • 山东省无障碍网站建设标准高平网站优化公司
  • 学做彩票网站好快速优化关键词排名
  • 高校网站如何建设超级seo工具
  • 建设一个网络交友的网站的论文网络上如何推广网站
  • 短视频如何引流与推广手机网站seo免费软件
  • 沅江网站制作电脑培训
  • 怎么做淘宝劵网站seo销售话术开场白
  • 怎么做浏览网站的小程序上海app开发公司
  • 芜湖做的好的招聘网站国家高新技术企业名单
  • 怎么做网站链接广告今日热搜第一名
  • 网上销售型的企业网站美国搜索引擎
  • 郑州网站建设包括哪些优化营商环境 助推高质量发展
  • 用html做卖珠宝的网站百度搜索热度
  • 网站布局策划的流程图论坛seo招聘
  • 如何用vps做网站免费软文网站
  • 简单网页制作代码模板北京seo招聘网
  • 做导购型网站福州seo外包公司
  • 最好的网站建设哪家好苏州疫情最新情况
  • 做网站的软件叫什么关键词排名查询网站
  • 可以做相册的网站百度广告联盟一个月能赚多少