描述將 p 進製 n 轉換為 q 進製。p 和 q 的取值範圍為【2,36】,其中,用到的數碼按從小到大依次為:0,1,2,3,4,5,6,7,8,9,a,b,...,z,不考慮小寫字母。
注意:n 的長度不超過50位。
三個數之間用逗號間隔。
關於輸入1+m 行,
第1行為 m,表示後面有 m 行,m不小於1.
其後的m行中,每行3個數: 進製p,p進製數n,以及進製 q。
三個數之間用逗號間隔
關於輸出轉換後的 q 進製數。
例子輸入6例子輸出18,2345678a123,18
15,23456,18
12,2345678,20
16,12345678,23
25,3456ab,21
18,ab1234567,22
2345678a123114e0
22b7a4
21a976l
7c2136
22jf0g367
1 #include "view codestdlib.h
"2 #include 3 #include4 #include 5
using
namespace
std;
6int
main()733
if (x >= q)//
x比q大的時候,進行除法
3439}40
if (x > 9)//
餘數進行轉換以後存入陣列res
41 res[count++] = x - 10 + 'a'
;42else
43 res[count++] = x + '0'
;44 len = -1;45
for(int i=0;i'
0';i++)
4649
if (strlen(num) - len < 2)50
break;51
}52for (int i = count - 1; i >= 0; i--)
53 cout <
54 cout <
56 }
這個真的花了蠻長時間的
並不知道除k取餘法是個什麼鬼
感謝poj提問區的大佬們的點撥
正整數的任意進製轉換
描述 將 p 進製 n 轉換為 q 進製。p 和 q 的取值範圍為 2,36 其中,用到的數碼按從小到大依次為 0,1,2,3,4,5,6,7,8,9,a,b,z,不考慮小寫字母。輸入一共1 m 行 第1行為 m,表示後面有 m 行 1 m 60 其後的m行中,每行3個數 進製p,p進製數n,以及進...
正整數的任意進製轉換
時間限制 1 sec 記憶體限制 128 mb 題目描述 將 p 進製 n 轉換為 q 進製。p 和 q 的取值範圍為 2,36 其中,用到的數碼按從小到大依次為 0,1,2,3,4,5,6,7,8,9,a,b,z,不考慮小寫字母。輸入一共1 m 行 1行為 m,表示後面有 m 行 1 m 60 其...
大整數任意進製轉換
include include include include using namespace std char str 1000 輸入字串 int start 1000 ans 1000 res 1000 被除數,商,餘數 轉換前後的進製 static int oldbase static int...