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;
}
};