[南陽OJ-No.56]階乘因式分解(一)|給定兩個數m,n,其中m是一個素數。 將n(0

南陽OJ-No.34

時間限制3000ms,內存限制65535KB,難度2

描述

給定兩個數m,n,其中m是一個素數。
將n(0<=n<=10000)的階乘分解質因數,求其中有多少個m。

輸入

第一行是一個整數s(0 < s <= 100),表示測試數據的組數
隨後的s行, 每行有兩個整數n,m。

輸出

輸出m的個數。

樣例輸入

2
100 5
16 2

樣例輸出

24
15


JAVA

時間32,內存246

import java.util.Scanner;

public class Main {
    public static Scanner cin = new Scanner(System.in);
    public static int N, m, n, count, temp=0, j, i;
    //count 用於計數,temp用於每階運算,i用於外層循環,j用於內層循環

    public static void main(String[] args) throws Exception {   
        N = cin.nextInt();
        for (i=0; i<N; i++) {
            count = 0;
            n = cin.nextInt();
            m = cin.nextInt();
            j = n;
            temp = n;

            while (n != 0) {
                n = n/m;
                count = count + n;
            }

            System.out.println(count);
        }
    }
}

C++

我就不寫了=_=

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章