0
点赞
收藏
分享

微信扫一扫

171. Excel Sheet Column Number*

171. Excel Sheet Column Number*

​​https://leetcode.com/problems/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

C++ 实现 1

把这些字符串表示的数据视为 26 进制的数据.

首先, 每个字符 ​​s[i]​​​ 表示的数据大小为 ​​v = s[i] - 'A' + 1​​​, 每向左移动一位, 相当于乘上了 26. 那么, 如果字符串的长度为 ​​N​​​, 那么位于第 i 位的字符表示的数据大小为 171. Excel Sheet Column Number*_数据.

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


举报

相关推荐

0 条评论