{"trustable":false,"prependHtml":"\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"PLAIN","content":"给定m个不同的单词,单词由小写字母组成,每个单词都有自身的价值。现在你要设计一个字符串,字符串的长度不能超过n。如果字符串里面包含了某个单词,就可以获得相应的价值,价值可以重复计算。单词可以相互重叠。\n"}},{"title":"Input","value":{"format":"PLAIN","content":"输入第一行一个正整数T,表示有T组数据。\n对于每组数据,先输入n和m,然后是m行,每行一个单词,单词的长度大于0,不超过11。接下来是m个整数,表示每个单词的价值。\nT\u003c\u003d10\nn\u003c\u003d50\nm\u003c\u003d100\n价值小于等于100\n"}},{"title":"Output","value":{"format":"PLAIN","content":"对于每组数据,输出构造的最大价值的字符串。如果价值相同,就选择长度最短的,如果长度一样短,那么就选择字典序最小。"}},{"title":"Sample Input","value":{"format":"PLAIN","content":"2\n7 2\nlove\never\n5 5\n5 1\nab\n5"}},{"title":"Sample Output","value":{"format":"PLAIN","content":"lovever\nabab\n\n\n \n \u003ci style\u003d\"font-size:1px\"\u003e \u003c/i\u003e\u003c/pre\u003e"}},{"title":"Hint","value":{"format":"PLAIN","content":"样例1中,love是5,ever是5,那么总的是10\n样例2中,两个ab,每个都是5,所以总的是10\n\n \n"}}]}