- 描述
-
給定兩個數m,n,其中m是一個素數。
將n(0<=n<=10000)的階乘分解質因數,求其中有多少個m。
- 輸入
- 第一行是一個整數s(0<s<=100),表示測試數據的組數
隨後的s行, 每行有兩個整數n,m。 - 輸出
- 輸出m的個數。
- 樣例輸入
-
2 100 5 16 2
- 樣例輸出
-
24 15
- 來源
- 網絡
- 上傳者
- 苗棟棟
AC代碼:
#include<cstdio> int n,m,t; int xx(int n) { int ans=0; for(int i=2;i<=n;i++) { while(n!=i) { if(n%i==0) { if(i==m) ans++; n/=i; } else break; } } if(n==m) ans++; return ans; } int main() { scanf("%d",&t); while(t--) { scanf("%d %d",&n,&m); int sum=0; while(n>1) { sum+=xx(n); n--; } printf("%d\n",sum); } return 0; }
【南陽理工】 56 階乘因式分解(一)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.