題目 | Excel Sheet Column Title |
經過率 | 17.2% |
難度 | Easy |
Given a positive integer, return its corresponding column title as appear in an Excel sheet.java
For example:app
1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB
Excel Sheet Column Title 與Excel Sheet Column Number正好是兩道互逆的題目,其實就是10進制和26進制之間的轉換;
思路:將每個數字%26取得那個數字,而後把n/26取得整數,只要n>0就一直循環執行下去;須要特別注意Z的狀況(即整除26);
java代碼:ui
public class Solution { public String convertToTitle(int n) { StringBuilder sb = new StringBuilder(); if(n<0) return sb.toString(); while(n>0){ int x=n%26; if(x==0){ sb.append('Z'); n--; }else{ sb.append((char)('A'-1+x)); } n/=26; } return sb.reverse().toString(); } }