LeetCode 171. Excel Sheet Column Number

171. Excel Sheet Column Number

Description

Related to question Excel Sheet Column Title
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 

Solution

  • 题意即将Excel的列表号(通常是字母)转换成数字形式,转换方式就是A-Z分别代表1-26,包括进位等,举例中说得很明显。
  • 其实这就是一个将数码全部用字母表示的26进制数转换为数字形式的十进制,还是按照加权的方式转换。
  • 从最低位开始,权值分别是1、26、26^2……按照进制转换的方式写即可,代码如下。
class Solution {
public:
    int titleToNumber(string s) {
        int rnt = 0;
        int index = 0;
        for (int i = s.size() - 1;i >= 0;i--) {
            rnt += (s[i] - 'A' + 1) * int(pow(26,index));
            index++;
        }
        return rnt;
    }
};
发布了77 篇原创文章 · 获赞 5 · 访问量 2万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章