Design the basic function of Excel and implement the function of the sum formula.
Implement the Excel class:
- Excel(int height, char width) Initializes the object with the height and the width of the sheet. The sheet is an integer matrix mat of size height x width with the row index in the range [1, height] and the column index in the range [‘A’, width]. All the values should be zero initially.
- void set(int row, char column, int val) Changes the value at mat[row][column] to be val.
- int get(int row, char column) Returns the value at mat[row][column].
- int sum(int row, char column, List
numbers) Sets the value at mat[row][column] to be the sum of cells represented by numbers and returns the value at mat[row][column]. This sum formula should exist until this cell is overlapped by another value or another sum formula. numbers[i] could be on the format:
- “ColRow” that represents a single cell.
- For example, “F7” represents the cell mat[7][‘F’].
- “ColRow1:ColRow2” that represents a range of cells. The range will always be a rectangle where “ColRow1” represent the position of the top-left cell, and “ColRow2” represents the position of the bottom-right cell.
- For example, “B3:F7” represents the cells mat[i][j] for 3 <= i <= 7 and ‘B’ <= j <= ‘F’.
Note: You could assume that there will not be any circular sum reference.
- For example, mat[1][‘A’] == sum(1, “B”) and mat[1][‘B’] == sum(1, “A”).
c++
1 | struct Cell { |