#P12722. [KOI 2021 Round 2] 计算机器人
[KOI 2021 Round 2] 计算机器人
题目背景
试题来源:https://koi.or.kr/archives/。中文翻译做了少量本土化修改。
按照署名—非商业性使用—相同方式共享 4.0 协议国际版进行授权。
题目描述
在一个由 行(横向)和 列(纵向)组成的网格中,每一个格子里都有一个机器人。
每一行从上到下依次编号为 1 到 ,每一列从左到右依次编号为 1 到 。通过这些编号,我们可以使用坐标 来表示网格中的格子位置。
每个机器人都有一个或多个输入值、一个存储值和一个输出值。
机器人的运作方式如下:从最左边一列的机器人开始,按列编号顺序依次运作。处于同一列中的机器人会同时运行。
机器人的行为如下(表达式 表示整数 的绝对值,即当 时 ,当 时 ):
- 最左边一列的机器人,其输入值仅为一个 。
- 坐标为 的机器人的输入值,是所有满足 且 的坐标 的机器人们的输出值。
- 每个机器人将其所有输入值中的最大值,作为自己的存储值。
- 每个机器人将自己的存储值加上自己的权重 ,并将所得值作为其输出值。
请编写一个程序,读取机器人的权重信息,计算所有机器人的存储值中的最大值(即最大存储值)。
输入格式
第一行包含两个整数 和 ,中间用一个空格分隔。
接下来的 行,每行包含一个长度为 的字符串,表示对应行的每个机器人的权重。每个字符为一个数字,表示该格子中机器人的权重 。
输出格式
输出一行,即所有机器人存储值中的最大值。
3 4
1234
2341
3412
11
提示
约束条件
- 对于所有满足 且 的 ,都有
子任务
- (3 分)
- (8 分)
- (9 分)
- (21 分) 且
- (59 分)无额外约束条件