763 进制转换
原題網(wǎng)址:https://www.lintcode.com/problem/hex-conversion/description
描述
給定一個十進(jìn)制數(shù)?n?和 一個整數(shù)?k, 將?十進(jìn)制數(shù) n?轉(zhuǎn)換成?k進(jìn)制數(shù).
1.0<=n<=2^31-1,?2<=k<=16
2.每個大于 9 的字符都用大寫字母表示
樣例
樣例 1:
給定?n?=?5,?k?=?2
return?"101"
樣例 2:
給定?n?=?30,?k?=?16
return?"1E"
?
思路:用一個具有16個元素的一維char數(shù)組保存k進(jìn)制數(shù)的字符,用每次n對k取余得到的結(jié)果作為下標(biāo)訪問一維數(shù)組,即可得到該數(shù)位上的相應(yīng)字符。 AC代碼: class Solution { public:/*** @param n: a decimal number* @param k: a Integer represent base-k* @return: a base-k number*/string hexConversion(int n, int k) {// write your code hereif (n==0){return "0";}int ch[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};string result="";int mod=0;while(n!=0){mod=n%k;n=n/k;result.push_back(ch[mod]);}reverse(result.begin(),result.end());return result;} };?
轉(zhuǎn)載于:https://www.cnblogs.com/Tang-tangt/p/9253790.html
總結(jié)
- 上一篇: Jetbrains全系列完美破解----
- 下一篇: 判断变量是否是数组