954B - String Typing
题意:给出一个目标字符串, 要求将一个空串转换为目标串,只能每次在后边加一个字符,或者将已得到的串copy然后粘贴到后边(注意!!!敲黑板了,这个操作只能用一次);
就是吃了读题不严谨的亏,第二个操作只能使用一次,傻傻的我按多次算的,,,,无奈啊~~~
既然操作二只有一次试用的机会,好到一定用在钢刃上,copy的越多越好;
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; int main(){ int n; string s; int len=0; while(cin >> n >> s){ len=1; for(int i=1; i<n; i++){ if(i*2>s.size()) break; if(s.substr(0, i)==s.substr(i, i)) len=i; } cout << n-len+1 << endl; } return 0; }