给定一个Excel表格中的列名称,返回其相应的列序号。
例如,
A -> 1
B -> 2
C -> 3
…
Z -> 26
AA -> 27
AB -> 28
…
示例 1:
输入: “A”
输出: 1
示例 2:
输入: “AB”
输出: 28
示例 3:
输入: “ZY”
输出: 701
思路:将十进制转化为二十六进制即可
class Solution {
public:
int titleToNumber(string s) {
int l = s.size();
int q = 0, w = l, h;
while (l)
{
if (w - l == 0)
{
h = (s[l - 1] - 'A' + 1);
}
else
{
h = pow(26, (w - l)) * (s[l - 1] - 'A' + 1);
}
q += h;
l--;
}
return q;
}
};