AT_code_festival_relay_e 変な足し算
题目描述
考虑一个被划分为 $h$ 行 $w$ 列、共 $hw$ 个正方形格子的棋盘。每个格子中写有一个 $0$ 到 $9$ 的一位数字,或者是一个点号 `.`。棋盘的左上角格子的坐标为 $(1, 1)$,右上角为 $(1, w)$,左下角为 $(h, 1)$,右下角为 $(h, w)$,其余格子的坐标依此类推。
请重复以下操作,直到棋盘上只剩下一个整数为止:
1. 从所有写有整数的格子中,任选一组曼哈顿距离最大的两个格子。曼哈顿距离指的是,若两个格子的坐标分别为 $(a, b)$ 和 $(c, d)$,则距离为 $|a - c| + |b - d|$。
2. 对于选中的这两个格子,将它们中的整数之和写在原本数值较大的那个格子上,另一个格子则用 `.` 覆盖。如果两个格子的数值相等,可以任选一个格子写上和,另一个用 `.` 覆盖。
请在上述操作结束后,输出棋盘上可能剩下的整数中的最大值。
输入格式
输入格式如下:
> $h$ $w$
> $b_1$
> $b_2$
> $\vdots$
> $b_h$
- 第 $1$ 行包含两个整数 $h$ 和 $w$,分别表示棋盘的行数和列数,满足 $1 \leq h, w \leq 100$。
- 接下来的 $h$ 行,每行一个长度为 $w$ 的字符串 $b_i$,表示棋盘第 $i$ 行的内容。每个字符为 $0$ 到 $9$ 的数字或 `.`。
- 保证棋盘上至少有一个整数。
输出格式
请输出棋盘上可能剩下的整数中的最大值。输出后换行,不要输出多余的字符或空行。
说明/提示
由 ChatGPT 4.1 翻译