#define ll long long
ll Stack[1000], top, Cnt[1000],tmp[1000];//stack是素因子数组,cnt是素因子的幂
//tmp[i]保存n!/(n-m)!中素因子stack[i]的个数
void fenjie(ll k)//分解的是k
{
top = 0;
memset(Cnt, 0, sizeof Cnt);
for(ll i = 2; i*i<=k; i++)if(k%i==0){
while(k%i==0)Cnt[top]++, k/=i;
Stack[top++] = i;
}
if(k>1){
Cnt[top]++;
Stack[top++] = k;
}
}
//达成目标:k=stack[0]^cnt[0]*stack[1]^cnt[1]*...*stack[top-1]^cnt[top-1]
素数分解
最新推荐文章于 2022-03-25 11:59:47 发布