[题目]洛谷10月月赛R1 提高组 [题意]求n!在k进制下末尾0的个数,n<=1e18,k<=1e16. [题解]考虑10进制末尾0要考虑2和5,推广到k进制则将k分解质因数. 每个质因数在n!中的数量,以2为例是n/2+n/4+n/8...这样统计.(含x个就被统计x次) 最后得到凑出的k的个数就可以得到末尾0的个数. 分解质因数复杂度O(√k),也使用pollard rho算法可以加速. #include <iostream> #include <stdlib.h>…
题目传送门:https://www.luogu.org/problemnew/show/P3927 题目大意:给你两个正整数n,k,求n!在k进制下末尾零的数量. 我们通过简单的数学分析,便可以发现,n!可以化为x*k^y(x,y∈N),而末尾零的数量,正是y. 经过进一步化简,$n! = x*\prod_{1}^{d(k)}d_{i}*y_{i}$,其中$d_{i}$为k的素因子,此处d(k)表示k的素因子个数,在已知d的情况下,求$y$并不复杂. 同时,我们也可以将k也化为这个格式,$k =…
题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. SOL菌表示不服,立刻就要算这个数在k进制表示下末尾0的个数. 但是SOL菌太菜了于是请你帮忙. 输入输出格式 输入格式: 本题包含多组数据. 每组输入仅包含一行:两个整数n,k. 输出格式: 对于每组输入,输出一个整数:n!在k进制下后缀0的个数. 输入输出样例 输入样例#1: 10 40 输出样例#1: 2 说明 对于20%的数据,n <= 1000000, k = 10 对于另外…
原址 题目背景 数据已修改 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. SOL菌表示不服,立刻就要算这个数在k进制表示下末尾0的个数. 但是SOL菌太菜了于是请你帮忙. 输入输出格式 输入格式: 每组输入仅包含一行:两个整数n,k. 输出格式: 输出一个整数:n!在k进制下后缀0的个数. 输入输出样例 输入样例#1: 10 40 输出样例#1: 2 说明 对于20%的…
题目大意:求$n!$在$k(k>1)$进制下末尾0的个数. 解题思路:一个数在十进制转k进制时,我们用短除法来做.容易发现,如果连续整除p个k,则末尾有p个0. 于是问题转化为$n!$能连续整除几个k. 我们先给k分解质因数,然后对于每个质因数,求出$n!$里有多少个质因数,然后如果k里有x个这个质因数,则求出的结果除以x.最后的答案为这些结果的最小值. 如何求$n!$里包含质因数的个数?由于$n!$是1乘到n,所以每p(p是质数)个数里一定有一个p,然后这些数中每p个里一定还有个p,以此类推即…
题目背景 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. SOL菌表示不服,立刻就要算这个数在k进制表示下末尾0的个数. 但是SOL菌太菜了于是请你帮忙. 输入输出格式 输入格式: 本题包含多组数据. 每组输入仅包含一行:两个整数n,k. 输出格式: 对于每组输入,输出一个整数:n!在k进制下后缀0的个数. 输入输出样例 输入样例#1: 10 40 输出样例#1: 2 说…
题目背景 数据已修改 SOL君(炉石主播)和SOL菌(完美信息教室讲师)是好朋友. 题目描述 SOL君很喜欢阶乘.而SOL菌很喜欢研究进制. 这一天,SOL君跟SOL菌炫技,随口算出了n的阶乘. SOL菌表示不服,立刻就要算这个数在k进制表示下末尾0的个数. 但是SOL菌太菜了于是请你帮忙. 输入输出格式 输入格式: 每组输入仅包含一行:两个整数n,k. 输出格式: 输出一个整数:n!在k进制下后缀0的个数. 输入输出样例 输入样例#1: 10 40 输出样例#1: 2 说明 对于20%的数据,…
博主学习本题的经过嘤嘤嘤: 7.22 : 听学长讲(一知半解)--自己推(推不出来)--网上看题解--以为自己会了(网上题解是错的)--发现错误以后又自己推(没推出来)--给学长发邮件--得到正确解法--按着学长思路又推一遍--最后理解 (前后的"学长"不是同一个人) 7.23 : 写出代码,完善细节. (建议改成:西   天   取   经) 首先,网上对于这道题的题解绝大部分是错误的!(比如洛谷上的部分题解) 用LIS做是不行的 玄学贪心是不行的 dp转移方程不能自圆其说是不行的…
洛谷题面传送门 nb tea 一道! 首先考虑怎样入手分析这个看似非常不可做的问题.首先题目涉及高度无穷的树,根本枚举不了.不过我们冷静一下就会发现,如果我们记 \(mx=\max\limits_{i=1}^{n}\text{dep}(T_i)\),那么由于初始树的集合中不存在深度 \(>mx\) 的树,因此所有可以生成的深度 \(>mx\) 的树都经过了生长操作,也是说: Observation \(1\). 对于某个深度 \(d>mx\),存在深度为 \(d\) 的树不能通过生长得到…
[题目]洛谷10月月赛R1 提高组 [题意]给定n*n棋盘和<=16个棋子,给几个棋子种类和攻击范围,现我方只有一马,求能否吃王. [算法]状压+BFS [题解]16种棋子中,马不能吃马,直接处理马和王,那么就剩13个棋子,可以压成2^13表示棋盘现有棋子存活状态. 然后对vis[2^13][n][n]进行bfs. 细节: 1.攻击直到碰到其它棋子,那个碰到的棋子也算攻击范围内. 2.判断碰到棋子时,注意该棋子是否在当前局面存活. 3.多组数据,Q中途退出要清空. 学到了: 1.一份长代码要细心…