给定一个正整数,返回它在 Excel 表中相对应的列名称。
例如,
1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB ...
示例 1:
输入: 1 输出: "A"
示例 2:
输入: 28 输出: "AB"
示例 3:
输入: 701 输出: "ZY"
思路:
和进制一样,分别取余和取商,然后加上对应的字符即可
class Solution {
public:
string convertToTitle(int n) {
string ret;
int k;
while(1)
{
k = n % 26;
n = n / 26;
if(k == 0 && n >0)
{
ret = 'Z' + ret;
n--;
}
else
{
char t = 'A' + k -1;
ret = t + ret;
}
if(n == 0)
break;
}
return ret;
}
};
效率:
100%