Given a positive integer, return its corresponding column title as appear in an Excel sheet.
For example:
1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB
SOLUTIONS:
试了好多次才成功,循环中写成
ret+=n%26+'A'-1;
n/=26;
对于26和52这样的会出错,26会成@A。
有人将循环中写成
n--;
char c=n%26+'A';
ret=ret+c;
n/=26;
可以顺利通过。
一下是自己写的方法。
class Solution {
public:
string convertToTitle(int n) {
string ret;
if(n <=0 ){
return ret;
}
while(n>0){
if(n%26==0){
ret='Z'+ret;
n=n/26-1;
} else {
char c=n%26+'A'-1;
ret=c+ret;
n/=26;
}
}
return ret;
}
};