Description#
Given a string columnTitle
that represents the column title as appears 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: columnTitle = "A"
Output: 1
Example 2:
Input: columnTitle = "AB"
Output: 28
Example 3:
Input: columnTitle = "ZY"
Output: 701
Constraints:
1 <= columnTitle.length <= 7
columnTitle
consists only of uppercase English letters.columnTitle
is in the range ["A", "FXSHRXW"]
.
Solutions#
Solution 1#
1
2
3
4
5
6
| class Solution:
def titleToNumber(self, columnTitle: str) -> int:
res = 0
for c in columnTitle:
res = res * 26 + (ord(c) - ord('A') + 1)
return res
|
1
2
3
4
5
6
7
8
9
| class Solution {
public int titleToNumber(String columnTitle) {
int res = 0;
for (char c : columnTitle.toCharArray()) {
res = res * 26 + (c - 'A' + 1);
}
return res;
}
}
|
1
2
3
4
5
6
7
8
9
10
| class Solution {
public:
int titleToNumber(string columnTitle) {
int res = 0;
for (char c : columnTitle) {
res = res * 26 + (c - 'A' + 1);
}
return res;
}
};
|
1
2
3
4
5
6
7
| func titleToNumber(columnTitle string) int {
res := 0
for _, c := range columnTitle {
res = res*26 + int(c-'A'+1)
}
return res
}
|
1
2
3
4
5
6
7
| function titleToNumber(columnTitle: string): number {
let res: number = 0;
for (let char of columnTitle) {
res = res * 26 + char.charCodeAt(0) - 64;
}
return res;
}
|