1. 程式人生 > >LeetCode刷題EASY篇Excel Sheet Column Title

LeetCode刷題EASY篇Excel Sheet Column Title

題目

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"

 

解法

拼接求餘的結果就可以,如商大於0,繼續求mod

class Solution {
    public String convertToTitle(int n) {
       StringBuilder sb=new StringBuilder();
        //只是看mod不需要看shang
       while(n>0){
           n--;
           sb.insert(0,(char)('A'+n%26));
           n/=26;
           
       }
        return sb.toString();
   
    }
}

比如計算28對應多少,計算過程如下

(28-1)/26=1 餘數為1,1對應B(A+1),因此第一個為B

繼續 , 商為1,大於0,(1-1)/26=0.  A+0對應A,插入A  。所以結果為AB,注意插入都是在0的位置。並且記得減去1.