URAL1355. Bald Spot Revisited

时间:2023-12-28 21:48:08

1355

其实就是求质因子的个数 这样肯定是最多的

注意一下 除到最后不是1的情况

 #include <iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<stdlib.h>
#include<cmath>
using namespace std;
#define N 32000
int p[N],g,f[N];
void init()
{
int i,j;
f[] = ;
f[] = ;
for(i = ; i < N ; i++)
if(!f[i])
for(j = i+i ; j < N ; j+=i)
f[j] = ;
for(i = ; i < N ;i++)
if(!f[i])
p[++g] = i;
}
int main()
{
int i,n,m,t;
init();
cin>>t;
while(t--)
{
cin>>n>>m;
if(m%n!=)
{
printf("0\n");
continue;
}
int x = m/n,ans=;
for(i = ; i <= g ; i++)
{
while(x&&x%p[i]==)
{
x/=p[i];
ans++;
}
}
if(x!=) ans+=;
cout<<ans<<endl;
}
return ;
}