版权声明:《学习技巧》每次使用单边大脑的时间不要太久,连续使用左边大脑30分钟就如同连续使用左臂30分钟一样,周期性的交换让大脑两侧能够轮流休息,左脑活动包括了循序渐进的工作,解决逻辑问题与分析,而右脑活动包括了隐喻,创造性思考,模式匹配和可视化。 https://blog.csdn.net/intmainhhh/article/details/82026738
代码
#include<bits/stdc++.h>
using namespace std;
const int maxn=50+10;
int nex[maxn];
string p;
void get_next() {
int q,k;
int m = p.length();
nex[0] = 0;
for (q = 1,k = 0; q < m; ++q) {
while(k > 0 && p[q] != p[k])
k = nex[k-1];
if (p[q] == p[k]) {
k++;
}
nex[q] = k;
}
}
int main() {
int n,k;///1<= n,k <=50
cin>>n>>k;
k--;
cin>>p;
get_next();
int len=nex[n-1];
while(k--)
p=p+p.substr(len,n-len);
cout<<p;
return 0;
}