CF335A Banana

题目描述

Piegirl 正在为一个项目购买贴纸。贴纸按张出售,每张贴纸上恰好有 $n$ 个贴纸。每个贴纸上印有一个字符,这样一张贴纸就可以用一个长度为 $n$ 的字符串来描述。Piegirl 想用贴纸拼出一个字符串 $s$。她可以买任意数量的贴纸,并且可以指定贴纸上的字符串(即每张贴纸上的字符排列可以任意),但所有收到的贴纸必须完全相同,也就是说所有贴纸都是同一个字符串。当她得到这些贴纸后,可以从多张贴纸上取下部分贴纸,并将它们重新排列(顺序任意)来拼出 $s$。请你确定她至少要买多少张贴纸,并给出一张贴纸上可能印有的字符串。

输入格式

第一行包含字符串 $s$($1 \leq |s| \leq 1000$),仅由小写英文字母组成。 第二行包含一个整数 $n$($1 \leq n \leq 1000$)。

输出格式

第一行输出她至少要买的贴纸张数。 第二行输出一个由 $n$ 个小写英文字母组成的字符串,表示一张可能的贴纸上印有的字符排列,使得购买的张数最少。如果无法用任意数量的贴纸拼出 $s$,则输出一行 $-1$。

说明/提示

在第二个样例中,Piegirl 可以订购 3 张上面分别印有 "nab" 的贴纸。她可以从第一张贴纸上取出字符 "nab",从第二张上取出 "na",从第三张取出 "a",然后重新排列它们组成 "banana"。 由 ChatGPT 5 翻译