题目链接:
分析:
求A(n,m)转化成k进制以后末尾0的个数。对k素因子分解,第i个因子为fac[i],
第i个因子的指数为num[i],然后再对n的对A(n,m)进行素因子分解,设count[i]
代表fac[i]相应的指数,ans = min{count[i]/num[i] }
代码例如以下:
#include#include #include #include using namespace std;const int maxn = 1e6+10;typedef long long LL;int pri[maxn],cnt;bool vis[maxn];int fac[1000],num;int Count[1000];LL sum[maxn];void init(){ memset(vis,0,sizeof(vis)); cnt=0; for(int i=2;i 1) fac[num]=x,Count[num++]=1;}LL getNum(int n,int p){ if(n