Welcome to Subscribe On Youtube
2194. Cells in a Range on an Excel Sheet
Description
A cell (r, c) of an excel sheet is represented as a string "<col><row>" where:
<col>denotes the column numbercof the cell. It is represented by alphabetical letters.- For example, the
1stcolumn is denoted by'A', the2ndby'B', the3rdby'C', and so on.
- For example, the
<row>is the row numberrof the cell. Therthrow is represented by the integerr.
You are given a string s in the format "<col1><row1>:<col2><row2>", where <col1> represents the column c1, <row1> represents the row r1, <col2> represents the column c2, and <row2> represents the row r2, such that r1 <= r2 and c1 <= c2.
Return the list of cells (x, y) such that r1 <= x <= r2 and c1 <= y <= c2. The cells should be represented as strings in the format mentioned above and be sorted in non-decreasing order first by columns and then by rows.
Example 1:

Input: s = "K1:L2" Output: ["K1","K2","L1","L2"] Explanation: The above diagram shows the cells which should be present in the list. The red arrows denote the order in which the cells should be presented.
Example 2:

Input: s = "A1:F1" Output: ["A1","B1","C1","D1","E1","F1"] Explanation: The above diagram shows the cells which should be present in the list. The red arrow denotes the order in which the cells should be presented.
Constraints:
s.length == 5'A' <= s[0] <= s[3] <= 'Z''1' <= s[1] <= s[4] <= '9'sconsists of uppercase English letters, digits and':'.
Solutions
-
class Solution { public List<String> cellsInRange(String s) { List<String> ans = new ArrayList<>(); for (char i = s.charAt(0); i <= s.charAt(3); ++i) { for (char j = s.charAt(1); j <= s.charAt(4); ++j) { ans.add(i + "" + j); } } return ans; } } -
class Solution { public: vector<string> cellsInRange(string s) { vector<string> ans; for (char i = s[0]; i <= s[3]; ++i) for (char j = s[1]; j <= s[4]; ++j) ans.push_back({i, j}); return ans; } }; -
class Solution: def cellsInRange(self, s: str) -> List[str]: return [ chr(i) + str(j) for i in range(ord(s[0]), ord(s[-2]) + 1) for j in range(int(s[1]), int(s[-1]) + 1) ] -
func cellsInRange(s string) []string { var ans []string for i := s[0]; i <= s[3]; i++ { for j := s[1]; j <= s[4]; j++ { ans = append(ans, string(i)+string(j)) } } return ans } -
function cellsInRange(s: string): string[] { const ans: string[] = []; for (let i = s.charCodeAt(0); i <= s.charCodeAt(3); ++i) { for (let j = s.charCodeAt(1); j <= s.charCodeAt(4); ++j) { ans.push(String.fromCharCode(i) + String.fromCharCode(j)); } } return ans; }