阶乘因式分解




阶乘因式分解(一)

时间限制: 3000 ms  |  内存限制: 65535 KB
难度: 2
描述

给定两个数m,n,其中m是一个素数。

将n(0<=n<=10000)的阶乘分解质因数,求其中有多少个m。

输入
第一行是一个整数s(0<s<=100),表示测试数据的组数
随后的s行, 每行有两个整数n,m。
输出
输出m的个数。
样例输入
2
100 5
16 2
样例输出
24
15
#include<iostream>
using namespace std;
int main()
{
 int n,m,count=0,z;long long s=1;
 cin>>z;
 for(int j=1;j<=z;j++)
  {count=0;s=1; 
     cin>>n>>m;
  for(int i=m;i<=n;i++)
    {
   s=i*s;//cout<<s<<endl;
   if(s%m!=0)s=1;//运用此条件舍弃无关项
   while(s%m==0)
        {
         s/=m;count++;//cout<<count<<endl;
        }
    }
   cout<<count<<endl;
 }
} 



注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2018 ITdaan.com 粤ICP备14056181号