蓝桥杯打卡Day7

news/2024/5/20 18:11:52


文章目录

  • 阶乘的末尾0
  • 整除问题

一、阶乘的末尾0IO链接

本题思路:由于本题需要求阶乘的末尾0,由于我们知道2*5=10可以得到一个0,那么我们就可以找出2的数和5的数,但是由于是阶乘,所以5的数量肯定是小于2的数量,因此我们只需要知道5的数量即可,这里只需要算含有5的次幂的数目即可。

#include <bits/stdc++.h>int main()
{std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);int n;std::cin>>n;//这里我们可以知道2和5的乘积能得到0,那么我们可以知道某个数的阶乘中2这个质因子的次数肯定大于5这个质因子出现的次数int cnt=0;while(n){cnt+=n/5;n/=5;}std::cout<<cnt<<std::endl;return 0;
}

二、整除问题IO链接

 本题思路:我们可以把 a 给拆分成若干个质因子之积,然后看下 2 ~ n 中包含多少个对应的质因子,就能得出来最多可以整除 a 的多少次方。比如 a 中有质因子p1、p2、p3,2 ~ n 中有对应的质因子、num1、num2 … 个,那 k 的最大值也就是若干个 num 的最小值。

#include <bits/stdc++.h>int n,a;
std::vector<std::vector<int>> ans;void divide(int n)
{for(int i=2;i<=n/i;i++){if(n%i==0){int s=0;while(n%i==0){s++;n/=i;} ans.push_back({i,s});}}if(n>1) ans.push_back({n,1});}int get_p(int n,int p)
{int cnt=0;while(n){cnt+=n/p;n/=p;}return cnt;
}int main()
{std::ios::sync_with_stdio(false);std::cin.tie(nullptr);std::cout.tie(nullptr);std::cin>>n>>a;divide(a);int res=INT_MAX;for(int i=0;i<ans.size();i++)res=std::min(res,get_p(n,ans[i][0])/ans[i][1]);std::cout<<res<<std::endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.cpky.cn/p/15.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

【经验分享】如何使用VSCode对比两个文件

问题&#xff1a; 当有两个不同版本的文件&#xff0c;如何使用VSCode对比两个文件 解决办法 长按ctrl选择想要对比的两个文件-----右键选择将已选项进行比较----大功告成 大功告成

9.14号作业

仿照vector手动实现自己的myVector&#xff0c;最主要实现二倍扩容功能 有些功能&#xff0c;不会 #include <iostream>using namespace std; //创建vector类 class Vector { private:int *data;int size;int capacity; public://无参构造Vector(){}//拷贝构造Vector(c…

http实现文件分片下载

文章目录 检测是否支持HTTP Range 语法Range请求cURL示例单一范围多重范围条件式分片请求 Range分片请求的响应文件整体下载文件分片下载文本下载图片下载封装下载方法 HTTP分片异步下载是一种下载文件的技术&#xff0c;它允许将一个大文件分成多个小块&#xff08;分片&#…

Versus-在线全球物品可视化比较平台 万物皆可对比

Versus介绍 Versus是一个成熟的在线全球物品可视化比较平台&#xff0c;从比较手机到比较城市&#xff0c;涵盖 90 多个类别&#xff0c;可以在线比较智能手机、相机、耳机、显卡等&#xff0c;Versus 提供详细的技术规格、数据可视化和价格比较&#xff0c;是从智能手机到 PC…

Xcode 真机调试之Unable to install “xxx“,Code: -402653103

背景 Xcode14.0&#xff0c;使用Cocoapods引入三方库后编译成功运行项目报无法安装 Details DetailsUnable to install "HHTestGenerate" Domain: com.apple.dt.MobileDeviceErrorDomain Code: -402653103 User Info: {DVTErrorCreationDateKey "2023-09-11 0…

Linux 定时任务Crontab详解及常见问题解决

Linux 定时任务Crondtab简单了解 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程&#xff0c;与windows下的计划任务类似&#xff0c;当安装完成操作系统后&#xff0c;默认会安装此服务 工具&#xff0c;并且会自动启动crond进程&#xff0c;cron…