LeetCode刷题笔记--171. Excel Sheet Column Number

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

这道题和刚才做的逆向那道比,需要将map中的string变成char,另外,Z的值从0改到26.比刚才那道简单。

class Solution {
public:
    int titleToNumber(string s) {
        unordered_map<char,int> mp={{'A',1},{'B',2},{'C',3},{'D',4},{'E',5},{'F',6},{'G',7},{'H',8},{'I',9},{'J',10},{'K',11},{'L',12},{'M',13},{'N',14},{'O',15},{'P',16},{'Q',17},{'R',18},{'S',19},{'T',20},{'U',21},{'V',22},{'W',23},{'X',24},{'Y',25},{'Z',26}};
        int ans=0;
        for(int i=0;i<s.length();i++)
        {
            ans=ans*26+mp.at(s[i]);
        }
        return ans;
    }
};

猜你喜欢

转载自blog.csdn.net/vivian0239/article/details/87884883