#CF1029A. 相等子串构造(Many Equal Substrings)
0
相等子串构造(Many Equal Substrings)
相等子串构造(Many Equal Substrings)
题目描述
给定一个由 个小写拉丁字母组成的字符串 ,以及一个整数 。
我们定义字符串 的子串 表示从第 个字符到第 个字符的子串。
你的任务是构造一个最短的字符串 ,使得恰好有 个位置 满足 。换句话说,你需要构造一个最短的字符串 ,使得恰好有 个子串等于 。
保证答案唯一。
输入格式
输入的第一行包含两个整数 和 (),分别表示字符串 的长度和子串的个数。
第二行包含一个长度恰好为 的字符串 ,由小写拉丁字母组成。
输出格式
输出一个最短的字符串 ,使得恰好有 个子串等于 。
保证答案唯一。
样例输入 #1
3 4
aba
样例输出 #1
ababababa
样例输入 #2
3 2
cat
样例输出 #2
catcat
数据范围
由 ChatGPT 4.1 翻译
知识点与难度
本题涉及的知识点从属于 GESP 8级,难度(CF Rating):1300。
测试点分布
| Subtask | 分值 | 测试点编号 | 说明 |
|---|---|---|---|
| 0 | 10 | 1~2 | 样例 |
| 1 | 20 | 3~8 | 特殊性质: n=1 或 k=1 或全同字符 |
| 2 | 9~14 | 中等规模: 含长公共前后缀 Border 的周期串 | |
| 3 | 25 | 15~20 | 大规模 n,k≤50 含多级嵌套 Border 的 Hack 数据 |
| 4 | 21~25 | 满规模 n=50, k=50 随机与周期混合测试 |
出处:原题链接