P12782 [ICPC 2024 Yokohama R] E-Circuit Is Now on Sale!

题目背景

译自 [ICPC 2024 Yokohama Regional Contest](https://icpc.jp/2024/)。

题目描述

您是否在为您的孩子寻找数学教育工具?然后,不妨试试这款神奇的产品 E-circuit?这是学习二维几何、逻辑和算术的最佳玩具! E-circuit 由一个带有多个方块的网格空间组成,这些方块称为单元。每个单元都可以完美地契合在网格的一个方格中。它们具有若干输入和/或输出端子,用于传递整数值。当若干单元在网格中被恰当地放置时,它们会构成一棵表示数学公式的树。单元具有不同的功能,每种功能由下列单个字符表示: - 数字($\texttt{0}$ 到 $\texttt{9}$):这些单元有一个输出端子。它们将该数字所表示的整数值发送到它的输出端子。 - 连接器($\texttt{\#}$):这些单元有一个输入端子和一个输出端子。它们接收来自输入端子的整数值,并不做任何改动地将该值发送到输出端子。 - 运算符($\texttt{+}$,$\texttt{-}$,$\texttt{*}$,$\texttt{/}$):这些单元有两个输入端子和一个输出端子,对从输入端接收的值进行以下计算,并将结果发送到输出端子。 - $\texttt{+}$ 运算符计算两个输入值之和。 - $\texttt{-}$ 运算符计算两个输入值之差,用较大值减去较小值。 - $\texttt{*}$ 运算符计算两个输入值之积。 - $\texttt{/}$ 运算符计算两个输入值之商,用较大值除以较小值,若有小数则截断。 - 打印机($\texttt{P}$):打印机有一个输入端子,并显示其输入的值。网格中恰好应有一个打印机单元。 如果两个单元所在的格子共用一条边,则称它们相邻。当两个单元放置在相邻的格子中时,它们会通过一个单元的输出端子和另一个单元的输入端子相连。 现在给定一个恰当放置的单元配置,其中所有单元构成一棵表示数学公式的树。此类放置的形式化描述将在「输入」部分给出。 你的任务是计算该配置下打印机所显示的值。

输入格式

仅一组数据,格式如下所示: > $n$ $m$\ > $x_{1,1}$ $\cdots$ $x_{1,m}$\ > $\vdots$\ > $x_{n,1}$ $\cdots$ $x_{n,m}$ 第一行的两个整数 $n$ 和 $m$($1 \le n \le 50$,$1 \le m \le 50$)表示网格为 $n \times m$ 的矩阵。接下来的 $n$ 行描述单元的放置情况。字符 $x_{i,j}$ ($1 \le i \le n$, $1 \le j \le m$)指定位于从上往下第 $i$ 行、从左往右第 $j$ 列的格子中的单元。每个字符要么表示题目中描述的单元功能,要么是字符 $\texttt{.}$(点),表示该格子为空。 保证单元放置恰当,即: - 每个单元的相邻单元数等于其输入端子和输出端子总数; - 所有单元的输入端子总数等于输出端子总数; - 所有单元都属于打印机树:当且仅当一个单元是打印机或与另一个属于打印机树的单元相邻时,该单元才属于打印机树。 还保证 $\texttt{/}$ 运算符的输入值不为零,并且没有单元的输出值超过 $10^{18}$。

输出格式

输出一行,即打印机显示的值。