如何优雅的写单词_lduoj_kmp

简介: 在深知单词的重要性之后,PushyTao下定决心要好好背单词。为了防止在考试的时候不会写,PushyTao还决定在背单词的时候还要写几遍,但是他太懒了,所以就“发明”出了一种新的方法:比如说,对于一个长度为n的单词,PushyTao要写m遍。如果这个单词的后半部分和前面的一部分有相同,他就会省略掉相同的不写。比如说长度为3的一个单词aba,PushyTao要写4遍,那么就可以将单词写成ababababa,因为从s[1] ~ s[3],从s[3] ~ s[5],从s[5] ~ s[7],从s[7]~s[9]都是aba,所以这样PushyTao就非常“巧妙的”写完了4遍单词;

如何优雅的写单词


Description


单词背多少了!?

心里还没有点数了!?


还有多长时间考试你知道吗!?

你说,单词背到第几章了!?


呜呜呜,别骂了别骂了,再骂人傻了


在深知单词的重要性之后,PushyTao下定决心要好好背单词。为了防止在考试的时候不会写,PushyTao还决定在背单词的时候还要写几遍,但是他太懒了,所以就“发明”出了一种新的方法:


比如说,对于一个长度为n的单词,PushyTao要写m遍。如果这个单词的后半部分和前面的一部分有相同,他就会省略掉相同的不写。比如说长度为3的一个单词aba,PushyTao要写4遍,那么就可以将单词写成ababababa,因为从s[1] ~ s[3],从s[3] ~ s[5],从s[5] ~ s[7],从s[7]~s[9]都是aba,所以这样PushyTao就非常“巧妙的”写完了4遍单词;但是也有让PushyTao很无语的单词,比如abc,就不得不写成abcabcabcabc

Input


第一行:一个整数n代表单词的长度,一个整数m,代表要写的次数(1<=n,m<=50)

第二行:一个长度为n的字符串


Output


输出一个字符串,代表PushyTao可以写的长度最短的一个字符串


Samples


Input 复制

3 4
aba


Output

ababababa


Input 复制

3 2
abc


Output

abcabc


这个题的原型是CF 这个题


相关的题解可以看一下,我现在写一下这个题的题解


看一下数据范围可以看出来,这个题可以直接硬生生的进行模拟,可以便利字符串寻找长度最长的前缀和后缀,然后输出就可以。

说到这里,聪明的小伙伴已经发现了,在KMP中next数组不就可以用在最长的公共前后缀嘛

所以说这个题直接可以先输出一个原先的字符串,然后对于剩下的m-1次直接输出从next[n] ~ n-1的每一个字符串就好了嘛(下标从0开始)


优雅的KMP_Code():


char p[107];
int n,k;
int nex[107];
void _get_next(){
    nex[0] = 0;
    nex[1] = 0;
    for(int j=1;j<n;j++){
        int k = nex[j];
        while(k && p[j] != p[k]) k = nex[k];
        if(p[j] == p[k]) nex[j+1] = k+1;
        else nex[j+1] = 0;
    }
}
int main() {
    cin >> n >> k;
    cin >> p;
    _get_next();
    cout<<p;
    k--;
    while(k --){
        for(int i=nex[n];i<n;i++) printf("%c",p[i]);
    }
  return 0;
}


目录
相关文章
|
5天前
|
数据采集 人工智能 自然语言处理
3分钟采集134篇AI文章!深度解析如何通过云无影AgentBay实现25倍并发 + LlamaIndex智能推荐
结合阿里云无影 AgentBay 云端并发采集与 LlamaIndex 智能分析,3分钟高效抓取134篇 AI Agent 文章,实现 AI 推荐、智能问答与知识沉淀,打造从数据获取到价值提炼的完整闭环。
383 93
|
6天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~
|
5天前
|
SQL 人工智能 自然语言处理
Geo优化SOP标准化:于磊老师的“人性化Geo”体系如何助力企业获客提效46%
随着生成式AI的普及,Geo优化(Generative Engine Optimization)已成为企业获客的新战场。然而,缺乏标准化流程(Geo优化sop)导致优化效果参差不齐。本文将深入探讨Geo专家于磊老师提出的“人性化Geo”优化体系,并展示Geo优化sop标准化如何帮助企业实现获客效率提升46%的惊人效果,为企业在AI时代构建稳定的流量护城河。
390 156
Geo优化SOP标准化:于磊老师的“人性化Geo”体系如何助力企业获客提效46%
|
5天前
|
数据采集 缓存 数据可视化
Android 无侵入式数据采集:从手动埋点到字节码插桩的演进之路
本文深入探讨Android无侵入式埋点技术,通过AOP与字节码插桩(如ASM)实现数据采集自动化,彻底解耦业务代码与埋点逻辑。涵盖页面浏览、点击事件自动追踪及注解驱动的半自动化方案,提升数据质量与研发效率,助力团队迈向高效、稳定的智能化埋点体系。(238字)
270 158
|
13天前
|
机器人 API 调度
基于 DMS Dify+Notebook+Airflow 实现 Agent 的一站式开发
本文提出“DMS Dify + Notebook + Airflow”三位一体架构,解决 Dify 在代码执行与定时调度上的局限。通过 Notebook 扩展 Python 环境,Airflow实现任务调度,构建可扩展、可运维的企业级智能 Agent 系统,提升大模型应用的工程化能力。