一、题目
二、思路
一般的进制转换题目,只需要对num进行%运算,取得最后一位,然后对num进行/运算(将已经取到的位数去掉),循环直到num为0。一般的进制转换题目都是x在[0, x),即从0开始,满x进一。但是这题是从1开始,所以在进制转换操作前,需要对num进行减1操作,整体偏移,事实上如果漏了减1:
class Solution { public: string convertToTitle(int columnNumber) { string ans; while(columnNumber > 0){ int temp = columnNumber % 26; ans += temp + 'A' - 1; columnNumber /= 26; } reverse(ans.begin(), ans.end()); return ans; } };