#P8471. [Aya Round 1 F] 琪露诺的选择题

    ID: 7570 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 3 上传者: 标签>洛谷原创Special JudgeO2优化构造洛谷月赛

[Aya Round 1 F] 琪露诺的选择题

题目背景

Problem Number: 24\textit{24}

在经过射命丸文的一番调教之后,琪露诺的智商总算增长了⑨点。

现在寺子屋又要开始考试了,琪露诺通过一些手段知道了答案中的一些信息,而且因为她冰雪聪明,她不希望自己的成绩进步太明显,从而被老师上白泽慧音特别关照。因此她找到了你寻求一些帮助。

(注意:考试作弊是不对的!)

题目描述

2n2\cdot n 道选择题,每题有 A\text{A}B\text{B} 两个选项。正确答案可以表示为一个长度为 2n2\cdot n 的字符串。

现在你要构造出一份作答(长度同样为 2n2\cdot n 的字符串),其中恰好aaA\text{A},同时与正确答案相比,你的作答恰好有 ee 个错误。如果不存在这样的构造方案,报告无解。

注意:为了方便处理,本题保证 ene\le n

形式化地,给定 n,a,en,a,e 和一个长度为 2n2\cdot n 的 01 串 ss,你需要构造出一个恰好有 aa 个字符是 0\texttt 0 的长度为 2n2\cdot n 的 01 串 pp,使得

(i=12n[sipi])=e,\left(\sum_{i=1}^{2\cdot n}[s_i\ne p_i]\right)=e,

其中 [][] 是 Iverson Bracket,详见「说明/提示」中的「提示」。

输入格式

本题含有多组数据。

第一行输入一个整数 TT,表示数据组数。

对于每组数据:

  • 第一行输入三个整数 n,a,en,a,e
  • 第二行输入一个长度为 2n2\cdot n 的字符串,表示答案串。

输出格式

输出共 TT 行。

对于每组数据:

  • 若有解,输出一行一个长度为 2n2\cdot n 的字符串,表示你构造的作答串。
  • 若无解,输出一行一个字符串 -1\texttt{-1}
2
3 2 3
ABABBA
3 3 1
AAABBB
BBAABB
-1

提示

样例解释

对于数据 11,你构造出的作答串 BBAABB\text{BB{\color{e74c3c}AA}BB} 中恰好有 22A\text A,与答案串相比刚好有 33 处不同(即,有 33 处错误):

$$\text{{\color{e74c3c}A}BA{\color{e74c3c}B}B{\color{e74c3c}A}}\\ \text{{\color{52c41a}B}BA{\color{52c41a}A}B{\color{52c41a}B}} $$

故符合要求。

对于数据 22,不存在合法构造方案。

数据规模与约定

对于 100%100\% 的数据,有 1T1001\le T\le 1001n1051\le n\le 10^50en0\le e\le n0a2n0\le a\le 2\cdot n

单组测试点内保证 (2n)106\sum(2\cdot n)\le 10^6

提示

A. Iverson Bracket\textbf{A. Iverson Bracket}

Iverson Bracket,是一种用方括号记号,如果方括号内的条件满足则为 11,不满足则为 00。更确切地讲,

$$[P]=\begin{cases}1, & \text{If }P\text{ is true,}\\0,&\text{Otherwise.}\end{cases} $$