【leetcode 进制转换】Excel Sheet Column Title
2014-12-21 12:30
225 查看
【leetcode 进制转换】Excel Sheet Column Title
@author:wepon@blog:http://blog.csdn.net/u012162613
1、题目
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
2、分析
excel中的序是这样排的:A~Z,AA~ZZ,AAA~ZZZ.......本质是进制转换,将n转化为26进制,转化过程如下(括号里的是26进制数):
1->(1)->A
2->(2)->B
...
26->(10)->Z
27->(11)->AA
28->(12)->AB
.....
52->(20)->AZ
53->(21)->BA
因此可以将n转化为26进制表示的数,然后对每一位的数,根据『1->A,2->B,3->C....25->Y,26->Z』来转化。
当然,按照进制转换的方法(不断地除26取余数),不可能有26的余数,比如:52->(20)->AZ,此时余数是0,这种情况要特殊处理,很简单,如下面的代码所示:
3、代码
string convertToTitle(int n) { string str; while(n){ int r=n%26; n=n/26; if(r==0){ //为26的整数倍,该位设置为Z,n减掉1 str+='Z'; n--; }else{ str+=('A'+r-1); } } //反转 string result; for(int i=str.size()-1;i>=0;i--){ result+=str[i]; } return result; }
相关文章推荐
- leetcode 168. Excel Sheet Column Title-表格栏目|进制转换
- [Leetcode]-Excel Sheet Column Title
- Leetcode 168 Excel Sheet Column Title
- [leetcode]: 168. Excel Sheet Column Title
- Leetcode33: Excel Sheet Column Title
- Leetcode Excel Sheet Column Title
- [LeetCode] Excel Sheet Column Title
- [Leetcode]Excel Sheet Column Title
- [leetcode 168] Excel Sheet Column Title
- leetcode:数学:Excel Sheet Column Title(168)
- [LeetCode] Excel Sheet Column Title 求Excel表列名称
- [LeetCode] Excel Sheet Column Title
- (leetcode)Excel Sheet Column Title
- Java for LeetCode 168 Excel Sheet Column Title
- 【Leetcode】168. Excel Sheet Column Title
- [LeetCode]Excel Sheet Column Title
- leetcode(6),Excel Sheet Column Title和Excel Sheet Column Number(python)
- [LeetCode]Excel Sheet Column Title
- LeetCode Excel Sheet Column Title
- LeetCode --Excel Sheet Column Title