給出 n 和 k,求實進製 n 的 k 進製表現方式;
短除法!可以解決正數部分的問題,但是有負數參取模運算,過程會出現問題;
淺顯易懂的分析
非常詳細的講解
設當前是k進製;
當餘數y是負數的時候,y+=k;轉換為正數;同時 讓 商 減少 k,不影響最後的運算結果。
本題在回溯的時候輸出,等同於(先儲存,再反向輸出);
**1:
#include using namespace std;
int a[20];
int n,k;
void qiu(int x)
qiu(x/k);
//回溯輸出
if(y<10) printf("%d",y);
else printf("%c",y-10+'a');
}int main()
P1017 進製轉換 負數進製
第乙個是十進位制數n 32768 n 32767 第二個是負進製數的基數 r。110001 1 2 5 1 2 4 0 2 3 0 2 2 0 2 1 1 2 0 輸入 15 2 輸出 15 110001 base 2 在計算機運算中會出現取模結果為負數的情況,例如 3 2 1 3 2 1 餘數是負...
洛谷1017 進製轉換
題目描述 我們可以用這樣的方式來表示乙個十進位制數 將每個阿拉伯數字乘以乙個以該數字所處位置的 值減1 為指數,以10為底數的冪之和的形式。例如 123可表示為1 10 2 2 10 1 3 10 0這樣的形式。與之相似的,對二進位制數來說,也可表示成每個二進位制數碼乘以乙個以該數字所處位置的 值 ...
P1017 進製轉換
我們可以用這樣的方式來表示乙個十進位制數 將每個阿拉伯數字乘以乙個以該數字所處位置的 值減1 為指數,以10為底數的冪之和的形式。例如 123可表示為 1 102 2 101 3 1001 times 10 2 2 times 10 1 3 times 10 01 102 2 10 1 3 100 ...