CF1689A.Lex String

传统题 时间 2000 ms 内存 256 MiB 3 尝试 2 已通过 2 标签

Lex String

题目描述

Kuznecov 喜欢艺术、诗歌和音乐,也喜欢由小写英文字母组成的字符串。

最近,Kuznecov 找到了两个字符串 aa 和 bb,它们的长度分别为 nn 和 mm。这两个字符串只包含小写英文字母,并且没有任何字符同时出现在 aa 和 bb 中。

现在有一个初始为空的字符串 cc。Kuznecov 可以进行以下两种操作:

  • 从字符串 aa 中任选一个字符,将其从 aa 中移除,并添加到 cc 的末尾。
  • 从字符串 bb 中任选一个字符,将其从 bb 中移除,并添加到 cc 的末尾。

但是,他不能连续进行超过 kk 次同一种类型的操作。他必须一直进行操作,直到 aa 或 bb 变为空为止。请问操作结束后,字符串 cc 的字典序最小可能值是多少?

如果字符串 xx 是字符串 yy 的前缀且 x≠yx \neq y,则 xx 的字典序小于 yy。或者,在 xx 和 yy 第一个不同的位置,xx 的字母比 yy 的对应字母在字母表中更靠前,则 xx 的字典序小于 yy。

输入格式

输入包含若干组测试数据。第一行包含一个整数 tt(1≤t≤1001 \leq t \leq 100),表示测试用例的数量。接下来是每组测试数据的描述。

每组测试数据的第一行包含三个整数 nn、mm 和 kk(1≤n,m,k≤1001 \leq n, m, k \leq 100)。

第二行包含长度为 nn 的字符串 aa。

第三行包含长度为 mm 的字符串 bb。

字符串只包含小写英文字母,并且保证 aa 和 bb 没有公共字符。

输出格式

对于每组测试数据,输出一个字符串 cc,即问题的答案。

说明/提示

在第一个测试用例中,最优的做法是先从字符串 aa 中取出两个 'a' 并加入字符串 cc。此时不能再连续从 aa 取字符,因此必须从 bb 中取一个 'b'。按照这个逻辑,最终当 aa 被取空时,cc 为 'aabaabaa'。

在第二个测试用例中,最优的做法是尽可能多地从 aa 中取 'a',然后尽可能多地从 bb 中取 'b'。最后再取两个 'c' 使 aa 取空。

由 ChatGPT 4.1 翻译

样例

3
6 4 2
aaaaaa
bbbb
5 9 3
caaca
bedededeb
7 7 1
noskill
wxhtzdy
aabaabaa
aaabbcc
dihktlwlxnyoz

在线编程 IDE

建议全屏模式获得最佳体验