百煉OJ 2972 確定進製

2021-06-28 10:22:18 字數 1055 閱讀 7367

總時間限制: 

1000ms 

記憶體限制: 

65536kb

描述

6*9 = 42 對於十進位制來說是錯誤的,但是對於13進製來說是正確的。即, 6(13) * 9(13) = 42(13), 而 42(13) = 4 * 131 + 2 * 130 = 54(10)。 你的任務是寫一段程式讀入三個整數p、q和 r,然後確定乙個進製 b(2<=b<=16) 使得 p * q = r. 如果 b有很多選擇, 輸出最小的乙個。例如: p = 11, q = 11, r = 121. 則有 11(3) * 11(3) = 121(3) 因為 11(3) = 1 * 31 + 1 * 30 = 4(10) 和 121(3) = 1 * 32 + 2 * 31 + 1 * 30 = 16(10)。 對於進製 10,有 11(10) * 11(10) = 121(10)。這種情況下,應該輸出 3。如果沒有合適的進製,則輸出 0。

輸入輸入有 t組測試樣例。 t在第一行給出。每一組測試樣例佔一行,包含三個整數p、q、r。 p、q、r的所有位都是數字,並且1 <= p、q、r <= 1,000,000。

輸出對於每個測試樣例輸出一行。該行包含乙個整數:即使得p * q = r成立的最小的b。如果沒有合適的b,則輸出 0。

樣例輸入

3

6 9 42

11 11 121

2 2 2

樣例輸出

13

30

**taejon 2002, poj 1331, 程式設計實習07

解題思路,沒有什麼特殊的技巧,要注意的是pqr三個數的每個數的每一位必須比當前進製k要小。

#include #include #include int pow(int n, int z)

return ans;

}int decimal(int num, int d)

return ans;

}int main()

}if(i == 17)

}return 0;

}

poj 百練2972確定進製

總時間限制 1000ms 記憶體限制 65536kb 描述 6 9 42 對於十進位制來說是錯誤的,但是對於13進製來說是正確的。即,6 13 9 13 42 13 而 42 13 4 131 2 130 54 10 你的任務是寫一段程式讀入三個整數p q和 r,然後確定乙個進製 b 2 b 16 ...

1017 裝箱問題 百煉oj

include includeconst int len 6 using namespace std int main if sum 0 break int res num 5 num 4 num 3 num 2 3 4 int need2 0 if num 2 4 1 need2 5 else i...

百煉oj 2818 密碼

bob 和 alice 開始使用一種全新的編碼系統。它是一種基於一組私有鑰匙的。他們選擇了n個不同的數a1 an,它們都大於0小於等於n。機密過程如下 待加密的資訊放置在這組加密鑰匙下,資訊中的字元和金鑰中的數字一一對應起來。資訊中位於i位置的字母將被寫到加密資訊的第ai個位置,ai 是位於i位置的...