201 3 20確定進製

2021-09-13 01:57:06 字數 1028 閱讀 6813

題目描述:

6 × 9 = 42 對於十進位制來說是錯誤的,但是對於 13 進製來說是正確的。即,6(13) × 9(13) = 42(13), 而 42(13) = 4 × 13 + 2 = 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。

樣例輸入:

36 9 42

11 11 121

2 2 2

樣例輸出:

13

#includeusing namespace std;

long long convert(long long a,int n)

ans+=weight*digit;

weight*=n;

}return ans;

}int main()

q1=convert(q,i);

if(q1<0)

r1=convert(r,i);

if(r1<0)

if(p1*q1==r1)

} j++;cout

}

1973 確定進製

描述 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有很多選擇,輸出最小的乙個。...

確定進製 C

6 9 42 對於十進位制來說是錯誤的,但是對於13進製來說是正確的。即,6 13 9 13 42 13 而 42 13 4 13 1 2 13 0 54 10 你的任務是寫一段程式讀入三個整數p q和 r,然後確定乙個進製 b 2 b 16 使得 p q r.如果 b有很多選擇,輸出最小的乙個。例...

確定進製(經典水題)

問題描述 6 9 42 對十進位制來說是錯誤的 但是對13進製來說卻是正確的 即6 13 9 13 42 13 42 13 4 13 2 1 54 你的任務是編寫一段程式 讀入3個整數,p,q和r 然後確定乙個進製b 2 b 16 使得p q r。如過b有很多選擇 則輸出最小的那個進製 如果沒有合適...