编程题
表格计算 ### 题目描述 某次无聊中, atm 发现了一个很老的程序。这个程序的功能类似于 Excel ,它对一个表格进行操作。 不妨设表格有 $n$ 行,每行有 $m$ 个格子。 每个格子的内容可以是一个正整数,也可以是一个公式。 公式包括三种: 1. SUM(x1,y1:x2,y2) 表示求左上角是第 x1 行第 y1 个格子,右下角是第 x2 行第 y2 个格子这个矩形内所有格子的值的和。 2. AVG(x1,y1:x2,y2) 表示求左上角是第 x1 行第 y1 个格子,右下角是第 x2 行第 y2 个格子这个矩形内所有格子的值的平均数。 3. STD(x1,y1:x2,y2) 表示求左上角是第 x1 行第 y1 个格子,右下角是第 x2 行第 y2 个格子这个矩形内所有格子的值的标准差。 标准差即为方差的平方根。 方差就是:每个数据与平均值的差的平方的平均值,用来衡量单个数据离开平均数的程度。 公式都不会出现嵌套。 如果这个格子内是一个数,则这个格子的值等于这个数,否则这个格子的值等于格子公式求值结果。 输入这个表格后,程序会输出每个格子的值。atm 觉得这个程序很好玩,他也想实现一下这个程序。 ### 输入描述 第一行两个数 $n, m (n, m \leq 5)$ 。 接下来 $n$ 行输入一个表格。每行 $m$个由空格隔开的字符串,分别表示对应格子的内容。 输入保证不会出现循环依赖的情况,即不会出现两个格子 $a$ 和 $b$ 使得 $a$ 的值依赖 $b$ 的值且 $b$ 的值依赖 $a$ 的值。 ### 输出描述 输出一个表格,共 $n$ 行,每行 $m$ 个保留两位小数的实数。 数据保证不会有格子的值超过 $10^6$ 。 ### 输入输出样例 #### 示例 > 输入 ```txt 3 2 1 SUM(2,1:3,1) 2 AVG(1,1:1,2) SUM(1,1:2,1) STD(1,1:2,2) ``` > 输出 ```txt 1.00 5.00 2.00 3.00 3.00 1.48 ```
查看答案
赣ICP备20007335号-2