1 /*描述 2 给定两个数n,m,其中m是一个素数。 3 4 将n(0<=n<=2^31)的阶乘分解质因数,求其中有多少个m。 5 6 注:^为求幂符号。 7 8 9 10 输入 11 第一行是一个整数s(0<s<=100),表示测试数据的组数 12 随后的s行, 每行有两个整数n,m。 13 输出 14 输出m的个数 15 样例输入 16 3 17 100 5 18 16 2 19 1000000000 13 20 样例输出 21 24 22 15 23 83333329 24 */ 25 #include<stdio.h> 26 int main() 27 { 28 int s; 29 scanf("%d",&s); 30 while(s--) 31 { 32 int n, m, t , i, sum=0; 33 scanf("%d%d",&n,&m); 34 t = m; 35 while(1) 36 { 37 sum=sum+n/m; 38 m *= t; 39 if(n/m == 0) 40 break; 41 } 42 printf("%d\n",sum); 43 } 44 return 0; 45 }
原文:http://www.cnblogs.com/a604378578/p/3617500.html