LeetCode-168 Excel Sheet Column Title
2016-06-16 18:44
411 查看
Given a positive integer, return its corresponding column title as appear in an Excel sheet.
For example:
class Solution {
public:
string convertToTitle(int n) {
vector<int> num;
//转换成数字(逆序)
while(n/26!=0){
num.push_back(n%26);
n /= 26;
}
num.push_back(n);
int len = num.size();
//对0进行处理(01(逆序)相当于26,‘Z’)
// eg:26^2,即成了001(逆序),第一次循环后为 26 -1 1,第二次循环后 26 25 0;
for(int i = 0;i<len-1;i++){
if(num[i]<=0){
num[i+1] -= 1;
num[i] += 26;
}
}
if(num[num.size()-1] == 0)
num.pop_back();
int size = num.size();
char str[size + 1];
//逆序,转换为字符串
for(int j = 0;j<size;j++){
str[j] = num[size - 1 - j] - 1 + 'A';
}
str[size] = '\0';
string s(str);
return s;
}
};
For example:
1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB
class Solution {
public:
string convertToTitle(int n) {
vector<int> num;
//转换成数字(逆序)
while(n/26!=0){
num.push_back(n%26);
n /= 26;
}
num.push_back(n);
int len = num.size();
//对0进行处理(01(逆序)相当于26,‘Z’)
// eg:26^2,即成了001(逆序),第一次循环后为 26 -1 1,第二次循环后 26 25 0;
for(int i = 0;i<len-1;i++){
if(num[i]<=0){
num[i+1] -= 1;
num[i] += 26;
}
}
if(num[num.size()-1] == 0)
num.pop_back();
int size = num.size();
char str[size + 1];
//逆序,转换为字符串
for(int j = 0;j<size;j++){
str[j] = num[size - 1 - j] - 1 + 'A';
}
str[size] = '\0';
string s(str);
return s;
}
};
相关文章推荐
- leetcode 179 Largest Number
- leetcode 24 Swap Nodes in Pairs
- leetcode 2 Add Two Numbers 方法1
- leetcode 2 Add Two Numbers 方法2
- leetcode----Longest Substring Without Repeating Characters
- [LeetCode]47 Permutations II
- [LeetCode]65 Valid Number
- [LeetCode]123 Best Time to Buy and Sell Stock III
- [LeetCode] String Reorder Distance Apart
- [LeetCode] Sliding Window Maximum
- [LeetCode] Find the k-th Smallest Element in the Union of Two Sorted Arrays
- [LeetCode] Determine If Two Rectangles Overlap
- [LeetCode] A Distance Maximizing Problem
- leetcode_linearList
- leetcode_linearList02
- 021-Merge Two Sorted Lists(合并两个排好序的单链表);leetcode
- LeetCode[Day 1] Two Sum 题解
- LeetCode[Day 2] Median of Two Sorted Arrays 题解
- LeetCode[Day 3] Longest Substring Without... 题解
- LeetCode [Day 4] Add Two Numbers 题解