Description:
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
…
Example 1:
Input: 1
Output: "A"
Example 2:
Input: 28
Output: "AB"
Example 3:
Input: 701
Output: "ZY"
题意:输入一个整数,输出在Excel列中的表示;
解法:计算的最关键的一点就是减一的操作,对于一个整数 X X X,计算 ( X − 1 ) % 26 (X - 1) \% 26 (X−1)%26 + ' A A A'所得的结果才会在[A-Z]之间;
Java
class Solution {
public String convertToTitle(int n) {
StringBuilder sb = new StringBuilder();
while (--n >= 0) {
sb.append((char)(n % 26 + 'A'));
n /= 26;
}
return sb.reverse().toString();
}
}