2022.7.26今天你刷题了吗?
题目:
给你一个整数 columnNumber ,返回它在 Excel 表中相对应的列名称。
例如:
A -> 1
B -> 2
C -> 3
...
Z -> 26
AA -> 27
AB -> 28
分析:
给定一个整数,把它转为字符串,规则类似26进制转换。
思路:对于10进制转n进制问题,可以利用余和模进行计算。例如本题中,每次对整数先进行取26的模,得到最低位,然后利用数学公式更新整数。
解析:
class Solution {
public:
string convertToTitle(int columnNumber) {
string ans;
while (columnNumber > 0) {
int a0 = (columnNumber - 1) % 26 + 1;
ans += a0 - 1 + 'A';
columnNumber = (columnNumber - a0) / 26;
}
reverse(ans.begin(), ans.end());
return ans;
}
};