AT_agc077_a.[AGC077A] Reverse A…B
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
A, B からなる長さ $ N $ の文字列 $ X,Y $ が与えられます. $ X $ の $ i $ 文字目を $ X_i $ と表すことにします.
以下の操作を $ 0 $ 回以上 $ \left\lfloor \frac{N}{2} \right\rfloor $ 回以下行うことで, $ X $ を $ Y $ に一致させることができるか否かを判定してください.
- $ 1\leq l < r \leq N $ かつ $ X_l= $
Aかつ $ X_r= $Bなる整数組 $ (l, r) $ を選ぶ. $ X $ の $ l $ 番目から $ r $ 番目までの要素を反転する.ここで,「 $ X $ の $ l $ 番目から $ r $ 番目までの要素を反転する」とは, $ X_l,X_{l+1},\ldots,X_{r-1},X_r $ を $ X_r,X_{r-1},\ldots,X_{l+1},X_l $ に同時に置き換えることを言う.
$ X $ を $ Y $ に一致させることが可能な場合には,そのような手順をひとつ出力してください.
$ T $ 個のテストケースが与えられるので,それぞれについて答えを求めてください.
输入格式
入力は以下の形式で標準入力から与えられる.
$ T $ $ \mathrm{case}_1 $ $ \mathrm{case}_2 $ $ \vdots $ $ \mathrm{case}_T $
各テストケースは以下の形式で与えられる.
$ N $ $ X $ $ Y $
输出格式
$ \mathrm{case}_1,\mathrm{case}_2,\ldots,\mathrm{case}_T $ に対する答えを順に以下の形式で出力せよ.
$ 0 $ 回以上 $ \left\lfloor \frac{N}{2} \right\rfloor $ 回以下の操作で $ X $ を $ Y $ に一致させることが不可能な場合には,No と出力せよ.
可能な場合には,操作手順を次の形式で出力せよ.
Yes $ K $ $ l_1 $ $ r_1 $ $ l_2 $ $ r_2 $ $ \vdots $ $ l_K $ $ r_K $
ここで $ K $ は操作回数で, $ l_i,r_i $ は $ i $ 回目の操作で選ぶ整数 $ l,r $ を表す.これらは次を満たす必要がある.
- $ 0 \leq K \leq \left\lfloor \frac{N}{2} \right\rfloor $
- $ 1 \leq l_i < r_i \leq N $
条件を満たす操作手順が複数存在する場合には,そのどれを出力しても正解と見なされる.
输入输出样例
输入#1
3 5 ABAAB ABBAA 4 AAAA BBBB 10 BABBAABBAA BBBBAAABAA
输出#1
Yes 1 3 5 No Yes 3 2 7 4 6 3 5
说明/提示
Sample Explanation 1
$ 1 $ 番目のテストケースでは, $ X_3= $ A かつ $ X_5= $ B なので, $ X $ の $ 3 $ 番目から $ 5 $ 番目までの要素を反転する操作を行うことができます.この操作を行うと, $ X $ は ABBAA になり, $ Y $ と一致します.
$ 2 $ 番目のテストケースでは,どのように操作を行っても $ X $ を $ Y $ に一致させることができません.
Constraints
- $ 1 \leq T \leq 2.5\times 10^5 $
- $ 2 \leq N \leq 5\times 10^5 $
- 一つのテストケースに含まれる $ N $ の総和は $ 5\times 10^5 $ 以下
- $ X,Y $ は
A,Bからなる長さ $ N $ の文字列 - 入力される数値は全て整数
输入解题思路,AI测评打分。不知道怎么写?