问题
思路
刚上来已知每反应过来,做题的时候需要注意一点。在分析问题的时候,如果不能直接解决。需要考虑转化问题,即问题的本质是什么。这个题目,本质就是进制转换。想到这问题就解决了。
注意:转换的时候需要对mod修正。
代码
class Solution {
public:
string convertToTitle(int n) {
std::string ans;
while( n )
{
int mod = (n-1)%26;
n = (n-1)/26; // 这个地方n的意义并没有修正,因为还是从0开始
std::cout << "mod = " << mod << std::endl;
std::string tmp(1, 'A' + mod);
ans = tmp + ans;
}
return ans;
}
};