奇怪的回文子串
题号:NC200578
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

小凯想构造长度为len的字符串。但是这个字符串需要满足以下要求

1. 构造的字符串中最长的那一个回文子串,它的长度L满足
2. 给定n种字母,其出现次数不大于a_i
3. 都是小写字母

如果无法构造输出-1,否则输出你所构造的字符串。

回文串的定义:“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。

回文子串的定义为:字符串中连续若干个字符,其为回文串。

输入描述:

首先输入样例组数 

接下来对于每组样例输入四个数

接下来n行每行输入一个小写字母c_i,一个数字,代表字符c_i最多出现a_i

输出描述:

对于每个样例输出你构造好的字符串,如果无法完成构造输出-1。
示例1

输入

复制
2
0 4 2 0
2 5 3 2
a 3
b 2

输出

复制
aaaa
aaabb