LeetCode 171. Excel Sheet Column Number

Given a column title as appear in an Excel sheet, return its corresponding column number.

For example:

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

Example 1:

Input: "A"
Output: 1

Example 2:

Input: "AB"
Output: 28

Example 3:

Input: "ZY"
Output: 701

解析:根据Excel的列名称,获取对应的数值,可以认为是一个26进制的数值转为10进制,此题关键在于字母与对应数字的转换,转化处理如下:(s.at(i)-‘A’+1)。具体代码如下:

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

运行时间:

Add a Comment

邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据