给定一个正整数n,k,求n!中质因子k的个数。
示例:
n = 6,k = 2;
n! = 1*2*3*4*5*6
故共有1+2+3=6个。
解题思路:
利用结论:质因子p的个数 =
因此,代码如下:
#include <iostream>
using namespace std;
int zhiyinzi(int n,int p){
if(n<p) return 0;
else
return n/p + zhiyinzi(n/p,p);
}
int main(){
int n,k;
cin>>n>>k;
cout<<zhiyinzi(n,k)<<endl;
return 0;
}