K尾相等數

2021-06-20 22:45:11 字數 763 閱讀 6092

problem 105: k尾相等數

time limit:3 ms| memory limit:64 mb

difficulty:1

description

輸入乙個自然數k(k>1),如果存在自然數m和n(m>n),使得k^m和k^n均大於等於1000,且他們的末尾三位數相等,則稱m和n是一對「k尾相等數」。下面請程式設計求出m+n最小的k尾相等數。

input

第一行包含乙個正整數t,t<10000,表示有t組資料;

隨後有n行,每行包括乙個整數k(k<2*10^10);

output

對於輸入的每個整數k,輸出對應的m+n的最小值;

sample input12

sample output

120思路:開乙個1000的陣列,在k大於1000的情況下,每乘一次k,就把它後三位標記到陣列裡面,用當前次方數來標記。當找到乙個後三位已經找過的,當前次方數加上已經找過的次方數,就是最小的m + n。若k不大於1000,記錄幾次乘k之後可以達到三位以上,然後用它當計數器。

#include#includeint visit[1005];

int pow(int k);

int main()

return 0;

}int pow(int k)

c = 0;

r = 1;

while(1)

else

visit[r] = c;

} }}

K尾相等數問題

描述乙個自然數k 2 k 若存在自然數m和n m大於n 使得k m和k n均大於或等於1000,且它們的末尾三位數相等,則稱m和n是一對 k尾相等數 輸入 輸入包含若干個測試用例,每個測試用例佔一行,為乙個自然數k。輸出 對每個測試用例,用一行輸出符合要求的最小m n值。樣例輸入2 樣例輸出 120...

K尾相等數問題

k尾相等數問題 描述乙個自然數k 2 k 若存在自然數m和 n m大於 n 使得 k m和 k n均大於或等於 1000 且它們的末尾三位數相等,則稱m和 n是一對 k尾相等數 輸入輸入包含若干個測試用例,每個測試用例佔一行,為乙個自然數k。輸出對每個測試用例,用一行輸出符合要求的最小m n值。樣例...

K尾相等數 NYOJ212

題目描述 從鍵盤輸入乙個自然數k k 1 若存在自然數m和n m n 使得k m和k n均大於或等於1000,且他們末尾三位數相等,則稱m和n是一對 k尾相等數 編寫一程式,輸出m n值最小的k尾相等數。測試輸入資料 2 測試輸出資料 120 思路 最開始想錯了,蛋疼了很久。仔細思考後,我們可以注意...