P0547

[Poi2003]Numerals of Przesmyks

[Poi2003]Numerals of Przesmyks

很久以前有个部落叫做 Przesmyks,他们在数学上非常有成就。他们使用 + 和 - 来表示数字,可以用含有 + 和 - 的序列来表示自然数 0,1,2,…0, 1, 2, \dots,但是由于一些宗教原因,有一些序列是禁止出现的:每年牧师都会宣布序列中最多能出现多少个 -,这个数字取决于当年的年份,取值为 11 到 113113。

字符序列和数字之间的转换是这样的:把所有合法的序列按长度从短到长排序,长度相同的序列按照字典序排序(认为 - 优先于 +),然后把排好序的序列依次编号为 0,1,2,…0, 1, 2, \dots 即可。

这些符号的表示会随着 - 的最大出现次数的改变而改变,比如如果允许超过 11 个 - 出现的话,那么数字 22 将表示成 --。这些情况给历史学家造成了很大的麻烦,现在请你帮他们转换一下。

输入格式

第一行有三个数 m1m_1、m2m_2 和 nn,分别表示第一种限制、第二种限制以及要转换的序列数目。

接下来 nn 行,每行表示一个 m1m_1 限制下的字符序列。

输出格式

输出 nn 行,每行一个字符序列,表示对应的数字在 m2m_2 限制下的字符序列。

样例输入

1 2 3
-+-
-+
+-+

样例输出

++
--
-+-

数据范围

  • 1≤m1,m2≤1131\le m_1, m_2\le 113;
  • 1≤n≤101\le n\le 10;
  • 每个序列的长度不超过 10001000 个字符。

来源与许可

本题为 POI 2003 试题「Numerals of Przesmyks」,题面与测试数据整理自 BZOJ 2608。

样例 1

输入

1 2 3
-+-
-+
+-+

输出

++
--
-+-