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

【求阶乘——二分+阶乘的质因数分解】

题目

思路

  • 求末尾0的个数转为求5的个数
    • 末尾0的个数依赖于因子10的个数
    • 因子10的个数依赖于因子(2*5)的个数
    • 因子2远多于因子5
    • 最终转化为因子5的个数
  • 阶乘的某一因子的个数求解,见:对n质因数分解和对n!质因数分解-CSDN博客
  • 答案一定小于等于 5 * k,品品
  • 答案区间具有二段性,可以二分
  • 最后的答案要求的不是二段性当中的任何一个性质,而是刚好相等!!

代码

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll get(ll x)
{ll retv = 0;while(x){retv += x / 5;x /= 5;}return retv;
}
int main()
{ll k;cin >> k;ll l = 0, r = 5*k;while(l < r){ll mid = l + r >> 1;if(get(mid) >= k) r = mid;else l = mid+1;}if(get(l) != k) l = -1;cout << l;
}


http://www.mrgr.cn/news/72310.html

相关文章:

  • 深度学习:GPT-1的MindSpore实践
  • ONVIF协议操作摄像头方法
  • 微信小程序02-页面制作
  • 学习Gentoo系统中`eselect`工具的用法
  • 如何用AI写小说(二):Gradio 超简单的网页前端交互
  • 鸿蒙多线程开发——线程间数据通信对象02
  • 大数据分析案例-基于XGBoost算法构建电子商务交易欺诈预测模型
  • Servlet的使用
  • 创建逻辑卷报错:Device /dev/sdb excluded by a filter
  • 高考、考研、考公,究竟哪个更容易?网友众说纷纭,真相在这里
  • 通过生成式人工智能绕过面部识别认证
  • 深入理解接口测试:实用指南与最佳实践5.0(二)
  • Java基础-组件及事件处理(中)
  • flutter下拉刷新上拉加载的简单实现方式三
  • 【SSL-RL】自监督强化学习:自预测表征 (SPR)算法
  • 猎板 PCB 之罗杰斯板材:高性能驱动多领域发展
  • Spring Boot 接口防重复提交解决方案
  • 办公必备:非常好用的截图软件-snipaste
  • Spring Boot 集成 RabbitMQ:消息生产与消费详解
  • 【comfyui教程】ComfyUI学习笔记——最细ComfyUI安装教程!
  • OCX控件注册 SynCardOcx.ocx IE浏览器身份识别
  • DWARF
  • springboot企业信息管理系统,计算机毕业设计项目源码310,计算机毕设程序(LW+开题报告、中期报告、任务书等全套方案)
  • 「QT」基础数据类 之 QString 字符串类
  • 基于正则化算法的SAR图像去噪matlab仿真
  • Spring框架之中介者模式 (Mediator Pattern)