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

求阶乘--二分答案+0结尾与5有关

1.二分答案求最小

2.结尾为0就是分解质因数5的个数,有多少5的倍数其阶乘末尾就有多少个0
求n阶乘中5因子的个数的公式就是n/5+n/25+n/125+...+n/5^i;

代码如下,记得判断-1的情况

#include<bits/stdc++.h>
using namespace std;
#define N 100011
typedef long long ll;
typedef pair<ll,int> PII;
ll k;
ll an;
bool check(ll x)
{
	ll c=0;
	ll s=5;
	while(x/s)
	{
		c+=x/s;
		if(c>=k) return true;
		s*=5;
    }
    return false;
}
ll c1(ll x)
{
	ll c=0;
	ll s=5;
	while(x/s)
	{
		c+=x/s;
		s*=5;
    }
    if(c==k) return true;
    return false;
}
int main()
{ 
cin>>k;
 ll l=0,r=0x3f3f3f3f3f3f3f3fLL;
 while(l<=r)
 {
 	ll m=(l+r)>>1;
 	if(check(m))
 	{
 		an=m;
 		r=m-1;
	}else l=m+1;
 }
 if(c1(an))cout<<an;
 else cout<<"-1";
return 0;
}
///10000 200;

http://www.dtcms.com/a/98731.html

相关文章:

  • 日报日报流量分析
  • langchain框架,ollama调用deepseek r1 实现RAG问答
  • 软件架构设计中的软件过程模型初识
  • Postman 7.3.5 旧版下载指南(Win64)及注意事项
  • x82y 阿里滑块 阿里全系列
  • OpenAI API - Concept 核心概念说明
  • Intellij ider部署python项目教程
  • leetcode199 二叉树的右视图
  • MSTP与链路聚合技术
  • UE5屏幕淡入淡出插件 ScreenFade
  • 线程池详解
  • raise NotImplementedError(“子类必须实现此方法“)`
  • 【docker】Dockerfile中COPY和ADD的区别理解,多阶段构建中COPY的用法
  • 开发环境部署
  • 应用待机分组管控是啥
  • 智能预测维护:让设备“未卜先知”,减少宕机烦恼
  • 程序化广告行业(40/89):手游归因与投放异常解析
  • libva基础
  • SAP学习笔记 - 用Deepseek 整理SAP 07 - MRP要素的缩略语一览
  • ADC笔记
  • Windows下安装和配置Redis
  • 前台线程和后台线程
  • 算法刷题记录——题解目录汇总(持续更新)
  • Docker学习之dockerfile篇(day8)
  • 算法刷题记录——LeetCode篇(9.1) [第801~810题]
  • 精准的集装箱号码识别技术在过磅系统中的应用,显著提升物流效率、减少人为错误
  • 基于kafka的分布式日志收集平台项目(第三部分)
  • 页码设置相关问题记录
  • React 揭秘:从新手到高手的进阶之路
  • day19学习numpy库和matplotlib库