题目链接:https://leetcode.com/problems/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
实质为十进制转换为26进制
java代码:
package leetcode;
public class ExcelSheetColumnTitle {
// https://leetcode.com/problems/excel-sheet-column-title/
/*
* Excel序是这样的:A~Z, AA~ZZ, AAA~ZZZ, …… 本质上就是将一个10进制数转换为一个26进制的数
*/
public static String convertToTitle(int n) {
String result="";
while(n>0){
result=(char)((n-1)%26+'A')+result;
n=(n-1)/26;
}
return result;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(convertToTitle(12));
}
}
c++代码:
#include <iostream>
#include <functional>
#include <algorithm>
#include <vector>
using namespace std;
class Solution{
public:
string convertToTitle(int n) {
string s="";
while(n>0){
s=(char)((n-1)%26+'A')+s;
n=(n-1)/26;
}
return s;
}
};
int main() {
Solution s;
cout<<s.convertToTitle(17)<<endl;
return 0;
}