本文共 816 字,大约阅读时间需要 2 分钟。
找出一定没问题的字符(即一连串的额字符x个数能被k整除的),剩下的字符都是可能有问题的。
#include #include #include #include #include #include #include #include using namespace std;int k;char s[2000];int flag[2000];vector ans;char out[2000];int sz;int dd[2000];int main(){ memset(dd,0,sizeof dd); memset(flag,0,sizeof flag); scanf("%d",&k); scanf("%s",s); int len=strlen(s); int L=0; while(1) { int R; for(int i=L; s[i]; i++) { if(s[i]==s[L]) R=i; else break; } if((R-L+1)%k!=0) flag[s[L]]=1;//一定不破 L=R+1; if(L>=len) break; } memset(out,0,sizeof out); sz=0; int p=0; while(1) { if(p>=len) break; if(flag[s[p]]==1) { out[sz++]=s[p]; p++; } else { out[sz++]=s[p]; ans.push_back(s[p]); p=p+k; } } for(int i=0; i
转载于:https://www.cnblogs.com/zufezzt/p/5645027.html