codeforces 349 div2.c
Posted 十目
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了codeforces 349 div2.c相关的知识,希望对你有一定的参考价值。
1 #include <cstdio> 2 #include <cstring> 3 #include <set> 4 #include <iostream> 5 #include <map> 6 #include <math.h> 7 #include <algorithm> 8 using namespace std; 9 typedef long long ll; 10 const int N = 1000005; 11 const double pi= 3.14159265358979323846264; 12 bool val[10009]; 13 set<string>ans; 14 15 int main() 16 { 17 //freopen("in.txt","r",stdin); 18 string s; 19 cin>>s; 20 int l=s.length(); 21 val[l]=true; 22 for(int i=l-1;i>4;i--){ 23 if(val[i+2]){ 24 string t=s.substr(i,2);//直接求子串 25 if(s.find(t,i+2)!=i+2||val[i+5]){//find表示从i+2位置开始找第一个与t相等字符串的位置 26 val[i]=true; 27 ans.insert(t); 28 } 29 } 30 if(val[i+3]){ 31 string t=s.substr(i,3); 32 if(s.find(t,i+3)!=i+3||val[i+5]){ 33 val[i]=true; 34 ans.insert(t); 35 } 36 } 37 38 } 39 cout<<ans.size()<<endl; 40 set<string>::iterator it;//set是自动去重并安字典序排序orz高大上,输出方式也高大上 41 for( it=ans.begin();it!=ans.end();it++) 42 cout<<it->c_str()<<endl; 43 44 return 0; 45 }
以上是关于codeforces 349 div2.c的主要内容,如果未能解决你的问题,请参考以下文章
CodeForce Educational round Div2 C - Vasya and Robot
codeforces round 533 div2 C Ayoub and Lost Array [dp]
http://codeforces.com/contest/349