CF2109F.Penguin Steps

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

黑暗的智者 Mouf 和光明的勇者 Fouad 再次进入了网格王国。这次他们找到了出口,但出口被凶猛的怪物把守!他们必须徒手战斗,无法召唤怪物助阵!

Mouf 和 Fouad 站在一个 n×nn \times n 的网格上。每个单元格 (i,j)(i, j) 有一个数值 ai,ja_{i,j} 和一个颜色。当 ci,j=0c_{i,j} = 0 时单元格为白色,ci,j=1c_{i,j} = 1 时为黑色。

Mouf 从左上角 (1,1)(1, 1) 出发,Fouad 从左下角 (n,1)(n, 1) 出发,两人都要前往出口单元格 (r,n)(r, n)。

一条路径被定义为相邻单元格(共享水平或垂直边)的序列。路径的代价是该路径包含的所有单元格(包括起点和终点)中 ai,ja_{i,j} 的最大值。

定义:

  • disM\mathrm{dis}_M 表示 Mouf 从起点 (1,1)(1, 1) 到出口 (r,n)(r, n) 的所有有效路径中的最小可能代价;
  • disF\mathrm{dis}_F 表示 Fouad 从起点 (n,1)(n, 1) 到出口 (r,n)(r, n) 的所有有效路径中的最小可能代价。

在移动前,Mouf 可以执行最多 kk 次操作。每次操作中,他可以选择任意黑色单元格并将其数值增加 11(可以多次选择同一单元格)。

Mouf 希望在确保自身代价 disM\mathrm{dis}_M 不变(就像他没有执行任何操作时一样)的前提下,最大化 disF\mathrm{dis}_F。如果 Mouf 采取最优策略,disM\mathrm{dis}_M 和 disF\mathrm{dis}_F 的值将分别是多少?

输入格式

每个测试包含多个测试用例。第一行包含测试用例数量 tt(1≤t≤1031 \le t \le 10^3)。接下来是测试用例描述。

每个测试用例的第一行包含三个整数 nn、rr 和 kk(2≤n≤3002 \le n \le 300,1≤r≤n1 \le r \le n,0≤k≤1060 \le k \le 10^6)——分别表示网格边长、出口所在行号和允许的操作次数。

接下来的 nn 行中,第 ii 行包含 nn 个整数 ai,1,ai,2,…,ai,na_{i,1}, a_{i,2}, \ldots, a_{i,n}(1≤aij≤1061 \le a_{ij} \le 10^6)——表示第 ii 行单元格的数值。

接下来的 nn 行中,第 ii 行包含一个长度为 nn 的二进制字符串 cic_i——表示第 ii 行单元格的颜色(若 ci,j=0c_{i,j}=\mathtt{0} 为白色,ci,j=1c_{i,j} = \mathtt{1} 为黑色)。

保证所有测试用例的 n2n^2 之和不超过 9⋅1049 \cdot 10^4。

输出格式

对于每个测试用例,输出两个整数——表示 Mouf 采取最优策略后的 disM\mathrm{dis}_M 和 disF\mathrm{dis}_F。

输入输出样例

  • 输入#1

    4
    2 1 30
    2 2
    1 1
    11
    01
    3 3 5
    9 2 2
    2 3 2
    2 2 2
    111
    111
    010
    7 3 12
    3 3 3 3 5 1 1
    9 4 8 3 3 5 5
    9 4 8 7 3 3 3
    4 4 4 4 9 4 9
    4 4 4 4 9 4 9
    1 4 4 4 4 4 9
    1 1 4 4 9 9 9
    1111111
    1011111
    1011111
    1111111
    1111101
    1110001
    0111111
    5 3 1419
    1219 678 1672 1858 1210
    535 732 1316 345 296
    1106 3060 507 216 1943
    194 2124 47 87 4818
    1007 329 1425 284 660
    00010
    10111
    00101
    10001
    10100

    输出#1

    2 2
    9 5
    3 8
    1943 2426
  • 输入#2

    1
    8 2 2216
    429 589 675 2022 259 452 733 967
    1097 2880 256 1894 259 1052 345 692
    911 831 513 1243 200 14 854 217
    611 882 681 279 54 719 1469 1885
    504 2524 1332 17 3113 34 1281 717
    498 1896 1800 2231 731 364 69 1247
    1397 399 68 448 1337 1076 166 3786
    16 857 91 475 106 102 1517 1949
    01010100
    00101100
    00001000
    10100110
    00001000
    00100000
    01100011
    00001000

    输出#2

    733 1671

说明/提示

第一个测试用例解释:

  • 虽然 Mouf 可以执行最多 3030 次操作,但他无法将 disF\mathrm{dis}_F 提高到超过 22;他只能对 (2,2)(2,2) 进行操作,因为对 (1,1)(1,1) 或 (1,2)(1,2) 操作会改变 disM\mathrm{dis}_M。
  • Mouf 可以对 (2,2)(2,2) 执行全部 3030 次操作,但 Fouad 仍可以走路径 (2,1)→(1,1)→(1,2)(2,1) \rightarrow (1,1) \rightarrow (1,2),其代价为 22。

第二个测试用例解释:
Mouf 可以对 (2,2)(2,2) 执行 22 次操作,对 (3,2)(3,2) 执行 33 次操作。可以证明 disF\mathrm{dis}_F 无法超过 55。

翻译由 DeepSeek V3 完成

输入解题思路,AI测评打分。不知道怎么写?

首页