leetcode------Excel Sheet Column Title

标题: Excel Sheet Column Title
通过率: 17.3%
难度: 简单

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 

Credits:
Special thanks to @ifanchu for adding this problem and creating all test cases.

前边做过一个Excel Title转Column,前边就是乘26增加不用去处理其他的东西。

但是这个题比较麻烦。不是难在思路,二十难在细节的处理中,每次求余数加到字符串中,但是有一个问题就是 如果n=27,那么除以26是1,若果n=26除以26还是1,但是实际中是Z与AA的差距,直接看代码,这个题代码我感觉写的还是有问题,应该是直接-1求余,那么如果是26,减一后刚好是25,再加上‘A’就是Z如果是1,减一后是0,加上A还是A,下面直接看代码:

 1 public class Solution {
 2     public String convertToTitle(int n) {
 3         String result="",str="";
 4         char tmp;
 5         if(n<1)return null;
 6         while(n>0){
 7             int x=n%26;
 8             if(x==0){
 9                 result+="Z";
10             }
11             else{
12                 tmp=(char)(x-1+'A');
13                 result=result+String.valueOf(tmp);
14             }
15             n--;
16             n/=26;
17         }
18         for(int i=result.length()-1;i>=0;i--){
19             str=str+result.charAt(i);
20         }
21         return str;
22         
23     }
24 }

 

posted @ 2015-01-19 19:22  pku_smile  阅读(192)  评论(0编辑  收藏  举报