leetcode 171. Excel表列序号

问题描述

给定一个Excel表格中的列名称,返回其相应的列序号。

例如,

    A -> 1
    B -> 2
    C -> 3
    ...
    Z -> 26
    AA -> 27
    AB -> 28 
    ...
示例 1:

输入: "A"
输出: 1
示例 2:

输入: "AB"
输出: 28
示例 3:

输入: "ZY"
输出: 701

代码

其实这相当于吧26进制数转化为10进制数

class Solution {
public:
    int titleToNumber(string s) {
        int n = s.size(),i,ans=0;
        for(i = 0; i < n; i++)
        {
            ans *= 26;
            ans += (s[i]-'A'+1);
        }
        return ans;
    }
};

结果:

执行用时 :0 ms, 在所有 C++ 提交中击败了100.00%的用户
内存消耗 :7.6 MB, 在所有 C++ 提交中击败了100.00%的用户
posted @ 2020-03-19 08:40  曲径通霄  阅读(137)  评论(0编辑  收藏  举报