168 Excel Sheet Column Title

151 阅读1分钟

这题比171那题要难一些。。。我用了很长时间调试边界。test case一定要想足才行。

	//辗转相除(不知道是不是这个名词)
	//test case : 26 -> Z ; 27 -> AA ; 52 ->
	public String convertToTitle(int n) {
		StringBuilder sb = new StringBuilder();
		while ((n-1) / 26 > 0) {
			int mod = (n-1) % 26;
			sb.insert(0, (char) ('A' + mod));
			n = (n - 1) / 26 ;
		}
		sb.insert(0, (char) ('A' + n - 1));
		return sb.toString();
	}