給定整數 n ,試把階乘 n! 分解質因數,按照算術基本定理的形式輸出分解結果中的 pi 和 ci 即可。
輸入格式
乙個整數n。
輸出格式
n! 分解質因數後的結果,共若干行,每行一對pi,ci,表示含有pcii項。按照pi從小到大的順序輸出。
資料範圍
1≤n≤106
輸入樣例:
5輸出樣例:
2 33 1
5 1樣例解釋
5!=120=23∗3∗5
思路:
求n以內多少5的因子數為多少,可以表示為
[ n5
][\frac n 5]
[5n][n25
][\frac n ]
[25n]
[
n125
][\frac n ]
[125n][n
625]
[\frac n ]
[625n
] …對於每乙個素數都如此列舉即可。
#include
#include
#include
#include
using
namespace std;
typedef
long
long ll;
const
int maxn =
1e6+7;
int a[maxn]
,b[maxn]
,v[maxn]
,cnt;
void
getprime()
for(
int j =
1;j <= cnt && i * a[j]
< maxn;j++)}
}int
main()
}for
(int i =
1;i <= cnt;i++
)return0;
}
AcWing 197 階乘分解
給定整數 n 試把階乘 n 分解質因數,按照算術基本定理的形式輸出分解結果中的 pi 和 ci 即可。輸入格式 乙個整數n。輸出格式 n 分解質因數後的結果,共若干行,每行一對pi,ci,表示含有pcii項。按照pi從小到大的順序輸出。資料範圍 1 n 106 輸入樣例 5輸出樣例 2 33 1 5...
AcWing197階乘分解
n 的最大質因子不超過n。先質數篩出n以內質數,然後算在n!出現了多少次。對於質數p,只有質數p的倍數才含p。至少含有乙個p的有 include include include define ms a,b memset a,b,sizeof a define inf 0x3f3f3f3f defin...
AcWing 197階乘分解
題目描述 給定整數 n 試把階乘 n 分解質因數,按照算術基本定理的形式輸出分解結果中的 pi 和 ci 即可。題解 首先這個題目肯定需要做乙個篩子,但是n!的值實在太大,所以直接計算階乘後打表肯定不現實。但是我們注意道,對於n 乙個質因子p的個數取決於1 n這n個數中有多少個質因子p,最後對於p的...