String Typing CodeForces

题意:

  给一个字符串,可以复制某一段字符,问最少需要多少步能将其输出,比如abcabcd,先输入abc然后再赋值abc再输入d就只需要5步。

复制的这段字符 必须是从字符串的0位置开始复制的  而且只能粘贴一次  例abcabcabc  输出为7 

emm。。。

str.substr(i,j) 截取字符串str第i位置开始的长度为j的一段字符 

#include <bits/stdc++.h>
//freopen("1.txt", "r", stdin);
using namespace std;
const int maxn = 10010, INF = 0x7fffffff;

int main()
{
    int n;
    string str;
    cin>> n >> str;
    int res = n;
    for(int i=1; i<=n/2; i++)
        if(str.substr(0, i) == str.substr(i, i)) res = n - i + 1;
    cout<< res <<endl;

    return 0;
}
自己选择的路,跪着也要走完。朋友们,虽然这个世界日益浮躁起来,只要能够为了当时纯粹的梦想和感动坚持努力下去,不管其它人怎么样,我们也能够保持自己的本色走下去。
原文地址:https://www.cnblogs.com/WTSRUVF/p/9405096.html