AT_arc194_e.[ARC194E] Swap 0^X and 1^Y

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

给定由 0 和 1 组成且长度为 NN 的两个字符串 SS 和 TT,以及正整数 XX 和 YY。对于 i=1,2,…,Ni = 1, 2, \ldots, N,用 SiS_i 表示 SS 的第 ii 个字符。

请判断是否可以通过任意次(包括零次)执行以下操作 A 或操作 B,使得 SS 变为 TT:

  • (操作 A)选择一个满足 1≤i≤N−(X+Y)+11 \leq i \leq N - (X + Y) + 1 的整数 ii,且满足 Si=Si+1=⋯=Si+X−1=S_i = S_{i+1} = \cdots = S_{i+X-1} = 0 以及 Si+X=Si+X+1=⋯=Si+X+Y−1=S_{i+X} = S_{i+X+1} = \cdots = S_{i+X+Y-1} = 1。随后,将 Si,Si+1,…,Si+Y−1S_i, S_{i+1}, \ldots, S_{i+Y-1} 全部改为 1,并将 Si+Y,Si+Y+1,…,Si+Y+X−1S_{i+Y}, S_{i+Y+1}, \ldots, S_{i+Y+X-1} 全部改为 0。
  • (操作 B)选择一个满足 1≤i≤N−(X+Y)+11 \leq i \leq N - (X + Y) + 1 的整数 ii,且满足 Si=Si+1=⋯=Si+Y−1=S_i = S_{i+1} = \cdots = S_{i+Y-1} = 1 以及 Si+Y=Si+Y+1=⋯=Si+Y+X−1=S_{i+Y} = S_{i+Y+1} = \cdots = S_{i+Y+X-1} = 0。随后,将 Si,Si+1,…,Si+X−1S_i, S_{i+1}, \ldots, S_{i+X-1} 全部改为 0,并将 Si+X,Si+X+1,…,Si+X+Y−1S_{i+X}, S_{i+X+1}, \ldots, S_{i+X+Y-1} 全部改为 1。

输入格式

输入通过标准输入给出,格式如下:

NN XX YY SS TT

输出格式

如果可以将 SS 变为 TT,输出 Yes;否则输出 No。

输入输出样例

  • 输入#1

    9 2 1
    000111001
    011000011

    输出#1

    Yes
  • 输入#2

    1 1 1
    0
    1

    输出#2

    No

说明/提示

约束条件

  • 1≤N≤5×1051 \leq N \leq 5 \times 10^5
  • 1≤X,Y≤N1 \leq X, Y \leq N
  • SS 和 TT 是由 0 和 1 组成的长度为 NN 的字符串
  • 输入均为整数

样例解释 1

通过以下步骤可以将 SS 变为 TT:

  • 选择 i=2i = 2 执行操作 A,此时 S=S = 010011001。
  • 选择 i=6i = 6 执行操作 B,此时 S=S = 010010011。
  • 选择 i=3i = 3 执行操作 A,此时 S=S = 011000011。

因此输出 Yes。

样例解释 2

无法将 SS 变为 TT,因此输出 No。

翻译由 DeepSeek R1 完成

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

首页