Instructions
https://www.codewars.com/kata/get-the-excel-column-title/train/java
Solution:
import java.util.Stack;
public class GetExcelColumnTitle {
private static final String digits = "0ABCDEFGHIJKLMNOPQRSTUVWXYZ";
public static String getColumnTitle(int num) {
final int base = 26;
if(num <= 0){
throw new IllegalArgumentException();
}
StringBuilder sb = new StringBuilder();
Stack<Character> s = new Stack<Character>();
while(num != 0){
if(num % base != 0){
s.push(digits.charAt(num % base));
num = num / base;
}else{
s.push(digits.charAt(base));
num = num / base - 1;
}
}
while(!s.isEmpty()){
sb.append(s.pop());
}
return sb.toString();
}
}
Sample Tests:
https://www.codewars.com/kata/get-the-excel-column-title/train/java
Ref
http://ideasforjava.iteye.com/blog/636685