Excel表列名称

给你一个整数columnNumber,返回它在Excel表中相对应的列名称。

提示:

  • 1 <= columnNumber <= 2^31 - 1

168.Excel表列名称

乍一看我以为只是个简简单单的进制转换

啪一下很快啊!就WA了,哈哈(干笑

仔细想一想,这里是从1-26的26进制,人家没有0啊!正经的进制转换的路子不能走啊!

本来我寻思吧,1-25就是A-Y,0就是Z,还是WA了,对于701的测试样例过不了,多了一位A。

后面评论区里面说,既然习惯是0-25,那每次转换的时候把数字-1就好了,这样就是从0开始的了。

然后小黎就写出来了:

1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
public:
string convertToTitle(int columnNumber) {
string ans;
while(columnNumber){
columnNumber--;
ans.push_back(columnNumber % 26 + 'A');
columnNumber /= 26;
}
reverse(ans.begin(), ans.end());
return ans;
}
};
Contents
|