#ATagc062a. [AGC062A] Right Side Character

[AGC062A] Right Side Character

题目描述

给定一个只包含 AB 的长度为 n (2n)n\ (2\leq n) 的字符串 T=T1T2TnT=T_1T_2\dots T_n,定义长度为 n1n-1 的字符串 f(T)f(T) 如下:

  • 设所有满足 Ti=T_i=Ai (1in1)i\ (1\leq i \leq n-1) 记为 a1<a2<<ama_1 < a_2 < \dots < a_m,所有满足 Ti=T_i=Bi (1in1)i\ (1\leq i \leq n-1) 记为 b1<b2<<bkb_1 < b_2 < \dots < b_k。则 $f(T)=T\_{a\_1+1}T\_{a\_2+1}\dots T\_{a\_m+1}T\_{b\_1+1}T\_{b\_2+1}\dots T\_{b\_k+1}$。

例如,对于字符串 T=T=ABBABA,满足 Ti=T_i=Aiii=1,4i=1,4,满足 Ti=T_i=Biii=2,3,5i=2,3,5,因此 f(T)=T1+1T4+1T2+1T3+1T5+1=f(T)=T_{1+1}T_{4+1}T_{2+1}T_{3+1}T_{5+1}=BBBAA

现在给定一个只包含 AB 的长度为 NN 的字符串 SS

请你对 SS 连续执行 N1N-1f(S)f(S) 操作,输出最终得到的 SS

TT 组测试数据,请分别输出每组的答案。

输入格式

输入按以下格式从标准输入读入。

TT
case1\mathrm{case}_1
\vdots
caseT\mathrm{case}_T

每组数据格式如下:

NN SS

输出格式

请输出 TT 行,第 ii 行输出第 ii 组测试数据的答案。

样例 1

输入

3
2
AB
3
AAA
4
ABAB

输出

B
A
A

说明/提示

数据范围

  • 1T1051 \leq T \leq 10^5
  • 2N3×1052 \leq N \leq 3 \times 10^5
  • SS 是只包含 AB 的长度为 NN 的字符串
  • 输入的所有 NN 之和不超过 3×1053 \times 10^5
  • 所有输入的数均为整数

样例解释 1

对于第 11 组测试数据,SSAB 变为 B
对于第 22 组测试数据,SSAAA 变为 AA,再变为 A
对于第 33 组测试数据,SSABAB 变为 BBA,再变为 BA,再变为 A

由 ChatGPT 4.1 翻译