给定两个数m,n,其中m是一个素数。
将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m。
2 100 5 16 2
24 15
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int main()
{
int s,n,m,ans;
cin>>s;
while(s--)
{
cin>>n>>m;
ans=0;
if(n<2)
cout<<ans<<endl;
else
{
for(int i=2;i<=n;i++)
{
int t=i;
while(!(t%m))
{
++ans;
t/=m;
}
}
}
cout<<ans<<endl;
}
return 0;
}
原文:http://blog.csdn.net/u011694809/article/details/46505105