AT_aalc001_r.Connectivity

省选/NOI-

通过率:0%

AC君温馨提醒

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

题目描述

有一个 NN 行 WW 列的网格。记 (i,j)(i,j) 为从上往下数第 ii 行、从左往右数第 jj 列的格子。

网格中每个格子包含一个数字。初始时,格子 (i,j)(i,j) 中的数字为字符串 SiS_i 的第 jj 个字符。

接下来处理 QQ 个查询,每个查询属于以下两种类型之一:

  • 1 i T:对 j=1,2,…,Wj=1,2,\ldots,W,将格子 (i,j)(i,j) 中的数字修改为字符串 TT 的第 jj 个字符。
  • 2 a b c d:判断是否能从格子 (a,b)(a,b) 出发,通过若干次移动到达格子 (c,d)(c,d)。每次移动只能走到与当前格子有公共边(即上下左右相邻)且数字与当前格子相同的格子。

输入格式

输入从标准输入中按以下格式给出:

NN WW QQ
S1S_1
S2S_2
⋮\vdots
SNS_N
query1\mathrm{query}_1
query2\mathrm{query}_2
⋮\vdots
queryQ\mathrm{query}_Q

每个查询以以下两种格式之一给出:

11 ii TT

22 aa bb cc dd

输出格式

设 qq 为类型 22 的查询数量。输出 qq 行。在第 jj 行中,若在第 jj 个类型 22 查询中可以到达目标,则输出 Yes;否则输出 No。

输入输出样例

  • 输入#1

    4 5 5
    01010
    00000
    99999
    01010
    2 1 1 2 5
    2 1 1 4 1
    1 3 00000
    2 1 1 4 1
    2 1 2 4 2

    输出#1

    Yes
    No
    Yes
    No
  • 输入#2

    4 7 1
    1112111
    1212121
    1211121
    1222222
    2 4 1 3 7

    输出#2

    Yes

说明/提示

样例 1 解释:
初始时,你可以从单元格 (1,1)(1,1) 出发,仅经过数字为 00 的单元格,到达单元格 (2,5)(2,5)。但你无法从单元格 (1,1)(1,1) 到达单元格 (4,1)(4,1)。

将第 33 行修改为 00000 后,你便可以从单元格 (1,1)(1,1) 到达单元格 (4,1)(4,1)。

样例 2 解释:
你可以从单元格 (4,1)(4,1) 出发,按如下顺序移动(例如)到达单元格 (3,7)(3,7):

\[ (4,1),(3,1),(2,1),(1,1),(1,2),(1,3),(2,3),(3,3),(3,4),(3,5),(2,5),(1,5),(1,6),(1,7),(2,7),(3,7) \]

约束条件

  • 2≤N≤1052 \le N \le 10^5
  • 2≤W≤102 \le W \le 10
  • 1≤Q≤5×1041 \le Q \le 5 \times 10^4
  • SiS_i 是一个长度为 WW、由数字组成的字符串。
  • 对于类型 11 的查询,满足 1≤i≤N1 \le i \le N。
  • 对于类型 11 的查询,TT 是一个长度为 WW、由数字组成的字符串。
  • 对于类型 22 的查询,满足 1≤a,c≤N1 \le a,c \le N,1≤b,d≤W1 \le b,d \le W。
  • 对于类型 22 的查询,(a,b)≠(c,d)(a,b) \ne (c,d)。
  • 在给出类型 22 的查询时,单元格 (a,b)(a,b) 和 (c,d)(c,d) 中包含相同的数字。
  • 输入中的所有数值均为整数。

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

首页