题目 20395

计算机器人

查看题解 ↗GitHub ↗如何评测
题号
20395
时间限制
1000 ms
内存限制
256 MB
标签
比赛CSP-S
来源
CSP-S 国外模拟赛 29 - T1

第 1 题 计算机器人 (computerobot)

时间限制 1.0 s · 空间限制 256 MB · 44 个测试点 · 全文比较(过滤行末空格及文末回车)

本题使用文件输入输出:输入文件 computerobot.in,输出文件 computerobot.out。

按照署名—非商业性使用—相同方式共享 4.0 协议国际版进行授权。

题目描述

在一个由 MM 行(横向)和 NN 列(纵向)组成的网格中,每一个格子里都有一个机器人。

每一行从上到下依次编号为 1 到 MM,每一列从左到右依次编号为 1 到 NN。通过这些编号,我们可以使用坐标(行编号,列编号)来表示网格中的格子位置。

每个机器人都有一个或多个输入值、一个存储值和一个输出值。

机器人的运作方式如下:从最左边一列的机器人开始,按列编号顺序依次运作。处于同一列中的机器人会同时运行。

机器人的行为如下(表达式 ∣A∣|A| 表示整数 AA 的绝对值,即当 A≥0A \ge 0 时 ∣A∣=A|A| = A,当 A<0A < 0 时 ∣A∣=−A|A| = -A):

  • 最左边一列的机器人,其输入值仅为一个 0。
  • 坐标为 (i,j)(i, j) 的机器人的输入值,是所有满足 ∣i−a∣≤j−b|i - a| \le j - b 且 b<jb < j 的坐标 (a,b)(a, b) 的机器人们的输出值。
  • 每个机器人将其所有输入值中的最大值,作为自己的存储值。
  • 每个机器人将自己的存储值加上自己的权重 Di,jD_{i,j},并将所得值作为其输出值。

请编写一个程序,读取机器人的权重信息,计算所有机器人的存储值中的最大值(即最大存储值)。

输入格式

第一行包含两个整数 MM 和 NN,中间用一个空格分隔。

接下来的 MM 行,每行包含一个长度为 NN 的字符串,表示对应的每个机器人的权重。每个字符为一个数字,表示该格子中机器人的权重 Di,jD_{i,j}。

输出格式

输出一行,即所有机器人存储值中的最大值。

样例

样例 1

输入:

文本
3 4
1234
2341
3412

输出:

文本
11

提示

约束条件

  • 1≤M≤20001 \le M \le 2000
  • 1≤N≤20001 \le N \le 2000
  • 对于所有满足 1≤i≤M1 \le i \le M 且 1≤j≤N1 \le j \le N 的 (i,j)(i, j),都有 1≤Di,j≤91 \le D_{i,j} \le 9

子任务

  1. (3 分)N=1N = 1
  2. (8 分)N=2N = 2
  3. (9 分)M=1M = 1
  4. (21 分)M≤100M \le 100 且 N≤100N \le 100
  5. (59 分)无额外约束条件

数据下载

题目 20395 的公开数据

正在读取文件列表…

常用命令

题目 20395 的 ROJ 命令

以下命令默认使用全局安装的 ROJ Skill,请在终端中直接执行;如果修改过 AGENT_HOME,请将命令中的 ~/.agents 替换为对应目录。