168. Excel Sheet Column Title
by Botao Xiao
Question
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"
Thinking:
class Solution {
public String convertToTitle(int n) {
if(n == 0) return "";
StringBuilder sb = new StringBuilder();
String map = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
while(n != 0){
sb.append(map.charAt((n - 1) % 26));
n --;
n /= 26;
}
return sb.reverse().toString();
}
}
二刷
- 唯一恶心的就是都是从1开始计数,所以每次计算之前需要-1.
class Solution { public String convertToTitle(int n) { StringBuilder sb = new StringBuilder(); while(n != 0){ n--; int remain = n % 26; sb.insert(0, (char)(remain + 'A')); n /= 26; } return sb.toString(); } }
Subscribe via RSS