题目非常好懂,题意是给你n!和k个后缀零数,让你求出符合条件的进制b的个数。
假设你已经会求n!的质因数分解,再解释第一组样例。n=10,k=2,n!的阶乘可以表示为2^8*3^4*5^2*7,再转换成这种形式(2^4*3^2*5)^2*7,可以知有多少种进制满足条件,就是2^4*3^2*5的组合,一共有5*3*2种,其中肯定有不满足条件的,2^0,2^1,2^2,3^0,3^1,5^0,一共有3...
分类:
其他好文 时间:
2015-06-10 09:00:25
阅读次数:
129
在一个集合中,找和x互素的数有多少?
用容斥定理,先把每个数质因数分解(每个数至多有6个质因子),奇减偶加,就统计到和x互素的数了。
代码:
#include
#include
#include
#include
#include
using namespace std;
const int N = 5*100000+10;
const int maxn = 5*100000;
int c...
分类:
其他好文 时间:
2015-05-29 10:00:16
阅读次数:
129
最大公约数是一个很经典的数学问题,对于这个问题有四种通用的解法,质因数分解法,短除法,不过比较常用的还是辗转相除法,算法出自于欧几里的著作《几何原本》,还有一个就是出自《九章算术》的更相减损法,一般实现的时候都是通过辗转相除法实现,基本的逻辑是这样的:假设把a和b的最大公约数表示成为f(a,b),并...
分类:
编程语言 时间:
2015-05-27 20:41:18
阅读次数:
191
SOJ2666 分解 n!,数论,素数,ACM
给你一个数 n (1 < n <= 1000000) ,求 n! (n的阶乘)的质因数分解形式,质因数分解形式为
n=p1^m1*p2^m2*p3^m3……
* 这里 p1 < p2 < p3 < …… 为质数
* 如果 mi = 1, 则 ^ mi 就不需要输出...
分类:
其他好文 时间:
2015-05-09 10:17:31
阅读次数:
117
找出n!中零的个数。 对n!做质因数分解n!=2x*3y*5z*... 显然0的个数等于min(x,z),并且min(x,z)==z 证明: 对于阶乘而言,也就是1*2*3*...*n [n/k]代表1~n中能被k整除的个数 那么很显然 [n/2] > [n/5] (左边是逢2增1,右边是逢5增1....
分类:
其他好文 时间:
2015-05-06 17:14:03
阅读次数:
163
最近,我翻了一下之前的C语言教材,看了三个有意思的小程序,包括:寻找“水仙花数”、判断某数是否为素数、对一个数进行质因数分解。我想把这三个东西放到一个程序中,便写下了此文。 算法步骤1. 寻找“水仙花数”。“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。 2. 判断某数是否为素数。素数是指只能被1和它本身整...
分类:
编程语言 时间:
2015-04-27 20:12:30
阅读次数:
201
1 #include 2 int main() 3 { 4 int a; 5 printf("输入一个数,程序将给出它的质数分解。\n"); 6 scanf("%d",&a); 7 printf("a="); 8 int i=2; 9 while(...
分类:
其他好文 时间:
2015-04-16 01:12:49
阅读次数:
154
题意:求一个整数的阶乘的尾数0的个数。分析:**方法一:**对n!做质因数分解n!=2x?3y?5z?...n!=2^x*3^y*5^z*... 显然0的个数等于min(x,z)min(x,z),并且min(x,z)==zmin(x,z)==z,也就是5的幂指数。
证明:
对于阶乘而言,也就是N!=1?2?3?...?nN!=1*2*3*...*n
[n/2]>[n/5][n/2] > [n/...
分类:
其他好文 时间:
2015-04-07 12:04:06
阅读次数:
108
求mk整除n!,求k的最大值。现将m分解质因数,比如对于素数p1分解出来的指数为k1,那么n!中能分解出多少个p1出来呢?考虑10!中2的个数c:1~10中有10/2个数是2的倍数,c += 5;1~10中有10/4个数是4的倍数,所以c += 2,其中有10/8 = 1个数是8的倍数,所以c +=...
分类:
其他好文 时间:
2015-03-18 07:47:23
阅读次数:
127
Prufer编码的应用。懒的写质因数分解,直接高精度。注意当n=1的特殊情况的处理。#include #include #include #include #include #include #include #define rep(i, l, r) for(int i=l; i=r; i--)#d...
分类:
其他好文 时间:
2015-03-16 20:57:30
阅读次数:
163