nssl1174-阶乘【!基础!数论】
前言
比赛时xjq说这道题很水,是个基础数论。
然后…
就连交都没交
正题
给出n个数,求一个最小的mmm使得
m!∏i=1nai=q(q∈N+)\frac{m!}{\prod_{i=1}^na_i}=q(q\in N_+)∏i=1naim!=q(q∈N+)
解题思路
我们考虑因为要求在一起的乘积,所以个体是不会单独被处理的,所以我们可以将a1∼na_{1\sim n}a1∼n的乘积分解质因数,然后如果m!m!m!能够将所有的这些质因子都消掉就可以了。
然后我们考虑单独的一个质因子,比如:
a的乘积有2个5
我们发现5!5!5!只有1个5
但是10!10!10!有2个5,可以消掉,所以这个m至少要求是10。
这样我们就可以得出算法,将a的乘积分解质因数,然后对于每个质因子求一个最小的mmm,然后取这些要求中的最大值就好了。
code
#include<cstdio>
#include<algorithm>
#define N 100010
using namespace std;
int n,a,p[N],m,ans;
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&a);for(int j=2;j*j<=a;j++)while(!(a%j))p[j]++,a/=j,ans++;if(a>1) p[a]++,ans++;}//分解乘积for(int i=2;i<=N-10;i++)if(p[i]){int cur=i;while(p[i]){int tmp=cur;while(p[i]&&!(tmp%i)) p[i]--,tmp/=i;cur+=i;}//求最小m的要求m=max(m,cur-i);//取最大要求}printf("%d",m);
}
nssl1174-阶乘【!基础!数论】相关推荐
- 算法之基础数论应用篇(一)
基础数论应用篇 子集和 题目描述 筛质数 筛质数模板 欧拉筛 线性筛 哥德巴赫猜想 夏洛克和他的女朋友 二次筛法 分解质因数 试除法分解质因数 分解阶乘质因子 快速幂 模板 快速幂 快速乘法 序列的第 ...
- 数学/基础数论——从LeetCode题海中总结常见套路
今天是大年初一,祝大家新年快乐! 目录 基础数论求质数:LeetCode204.计数质数 常规解法: 娱乐一下:偷鸡式解法 埃拉托色尼筛选法 统计5因子的个数:LeetCode172.阶乘后的零 暴力 ...
- 欧几里得定理 java,每个程序员都应该知道的基础数论
原标题:每个程序员都应该知道的基础数论 这篇文章讨论了数论中每个程序员都应该知道的几个重要概念.本文的内容既不是对数论的入门介绍,也不是针对数论中任何特定算法的讨论,而只是做为数论的一篇参考. 0. ...
- 【数论】基础数论概念
基础数论概念 首先我们来回顾一下基础数论中关于整数集Z={-,-2,-1,0,1,2,-}和自然数集N={0,1,2,3,4,-}的一些概念. 整除性与约数 一个整数可以被另一个整数整除是数论中的一个 ...
- 每个程序员都应该知道的基础数论
这篇文章讨论了数论中每个程序员都应该知道的几个重要概念.本文的内容既不是对数论的入门介绍,也不是针对数论中任何特定算法的讨论,而只是想要做为数论的一篇参考.如果读者想要获取关于数论的更多细节,文中也提 ...
- 【ACM】kuangbin基础数论专题
知识补充:裴蜀定理 1.Bi-shoe and Phi-shoe 1.题意 给出一行数,求对应的数的欧拉函数值大于给出的数的数的最小和. 2.思路 我们知道素数表的欧拉函数值递增. 设素数a,b,b是 ...
- 永远不可能学会的数论之基础数论(例题)
涉及到知识 1.普通筛选.埃拉托斯特尼筛选.欧拉筛选 Bi-shoe and Phi-shoe Bamboo Pole-vault is a massively popular sport in Xz ...
- RSA算法原理——(2)RSA简介及基础数论知识
上期为大家介绍了目前常见加密算法,相信阅读过的同学们对目前的加密算法也算是有了一个大概的了解.如果你对这些解密算法概念及特点还不是很清晰的话,昌昌非常推荐大家可以看看HTTPS的加密通信原理,因为HT ...
- 基础数论(3)同余、逆元
同余和逆元 本篇博客将介绍同余和逆元,以及求逆元的三种方法(因为快速幂是本菜鸡在很久之前c语言还没学完的时候扣了一晚上看懂了,所以默认大家都会了) 放到一起总结一下.拖了好久的说... 然后,开始了. ...
最新文章
- c语言解决一元二次方程,一元二次方程求解程序完整代码
- html 悬浮阴影,css实现悬浮效果的阴影的方法示例
- 如何部署同一个Spring boot web 应用到不同的环境
- sql limit 子句_Java 8流中的常见SQL子句及其等效项
- Linux操作系统使用基础04:文件与目录管理
- JavaScript原型OOP——你上车了吗?
- www.sohu.com/a/162498139_165716
- 少年时期最后一个儿童节
- 极光笔记 | 极光clickhouse千亿级数据分析实践之路
- 关于破解Quartus
- 实用!Excel在线网页版表格Luckysheet源码
- 汉字字符集编码查询_刨根究底字符编码之十——Unicode字符集的字符编码方式...
- MATLAB--读取广播星历的导航文件
- Amdahl's law and Gustafson's law
- windows+ffmpeg+qsv实现inter核显加速视频解码编码
- df.pivot函数用法
- Arcpy基础入门-4、arcpy工具进阶
- Win7共享无线 实现iPad 2 WiFi上网
- 管理经济学第一遍总结
- 模糊数学20220610
热门文章
- 信息技术上册教案了解计算机,信息技术上册全册教案
- php-7.1.0,PHP 7.4.0 Alpha 1 v7.4.0 官方最新版
- 多个cpp文件生成so_boostpython:从多个.cpp文件创建一个模块(.so)
- c语言幼儿园积木游戏,幼儿园《积木游戏》课件【三篇】
- python字符串截取方法_如何使用python语言中的字符串方法截取字符串
- 一文梳理JavaScript中常见的七大继承方案
- linux多行变一列,多行转为一列
- C++ class实现双向循环链表(完整代码)
- 2019年第十届蓝桥杯国赛B组试题G-排列数-next_permutation枚举,模拟
- mac升级php7,MAC更新自带php版本到7.0