題目描述:
你有乙個十進位制數字,請按照此規則將它變成「十六進製制魔術數字」:首先將它變成字母大寫的十六進製制字串,然後將所有的數字 0 變成字母 o ,將數字 1 變成字母 i 。
如果乙個數字在轉換後只包含 ,那麼我們就認為這個轉換是有效的。
給你乙個字串 num ,它表示乙個十進位制數 n,如果它的十六進製制魔術數字轉換是有效的,請返回轉換後的結果,否則返回 「error」 。
示例 1:
輸入:num = 「257」
輸出:「ioi」
解釋:257 的十六進製制表示是 101 。
示例 2:
輸入:num = 「3」
輸出:「error」
1 <= n <= 10^12
給定字串不會有前導 0 。
結果中的所有字母都應該是大寫字母。
方法1:
主要思路:
(1)先將需要轉換的數字和字元進行對映;
(2)再將需要轉換的字串轉成對應的整型,使用求餘的方法轉成對應的十六進製制;
(3)若在轉換的過程中發現不符合要求的數字,則直接返回錯誤;
(4)否則,最後返回轉換的結果;
class
solution
mp[0]
='o'
; mp[1]
='i'
;long
long n=
stol
(num)
;//將需要轉換的字串轉成對應的整型
string res;
while
(n) n/=16
; res=mp[tmp]
+res;
}return res;
//返回結果}}
;
十六進製制與數字
原始碼 檔名 digit1.php error reporting 0 if empty get password function noother says correct temp one ord 1 nine ord 9 number 3735929054 check all the inpu...
CString轉十六進製制數字
借用strtol函式可以直接將乙個cstring物件轉化為任意數制的整數。比如 cstring st 20 int n strtol st,null,16 strtol函式原型 long int strtol const char nptr,char endptr,int base 引數base範圍...
Excel輸入十六進製制數,以及十六進製制運算
網上覆制來複製去的連個靠譜答案都沒有.f k 所以無奈自己探索出來了 單元格 a1文字值 a2進製值 輸入內容 fefe oct2hex hex2oct a29 由於單元格沒有提供進製格式,所以填入的值實際上是文字值,但是轉換函式卻可以把文字值視為進製值拿去轉換 所以我們兩次轉換就能得到真正的進製數...