本文主要是介绍[LeetCode]168.Excel Sheet Column Title,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
【题目】
Given a positive integer, return its corresponding column title as appear in an Excel sheet.
For example:
1 -> A2 -> B3 -> C...26 -> Z27 -> AA28 -> AB
【分析】
Because any_pos_int mod 26
should return a number in the interval [0, 25]
, but what we want is a number in the interval [1, 26]
. Thus we have to shift the digit leftward by 1
which means--n
.
【代码】
/*********************************
* 日期:2015-01-29
* 作者:SJF0115
* 题目: 168.Excel Sheet Column Title
* 网址:https://oj.leetcode.com/problems/excel-sheet-column-title/
* 结果:AC
* 来源:LeetCode
* 博客:
**********************************/
#include <iostream>
#include <vector>
#include <string>
using namespace std;class Solution {
public:string convertToTitle(int n) {if(n <= 0){return "";}//ifvector<int> vec;--n;// 除26取余倒排序while(n >= 0){vec.push_back(n % 26);n /= 26;--n;}//// 转换string result;int len = vec.size();for(int i = 0;i < len;++i){result.insert(result.begin(),vec[i]+'A');}//forreturn result;}
};int main(){Solution solution;for(int i = 500;i < 800;++i){string result = solution.convertToTitle(i);// 输出cout<<result<<" ";}cout<<endl;return 0;
}
【代码二】
class Solution {
public:string convertToTitle(int n) {if(n <= 0){return "";}//ifstring result;// 除26取余倒排序while(n > 0){n --;result.insert(result.begin(),static_cast<char>(n % 26 + 'A'));n /= 26;}//return result;}
};
这篇关于[LeetCode]168.Excel Sheet Column Title的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!