为什么输出不行啊,没一点用,感觉逻辑没问题啊

qq_37807989 2018-01-04 11:55:11
贝贝找了一份为一些文件的某些部分加密的工作,加密的部分是一串小写英文字母,加密的规则是这样的:要是连续出现相同的字母,则把他们替换成这个字母的大写形式,后面紧跟相同字母的个数,并把它之前跟之后的两段字串调换,例如出现bcaaaaaaef,则新字符串变成:efA6bc,然后重新扫描字串,直到没有出现相同小写字母为止。


#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;

int main()
{
string a;
int i,j,len,sum,k,t;
while(cin>>a)
{
len=a.size();
while(len--)
{

for(i=0;i<len;i++)
{
sum=1;
for(j=i;j<len;j++)
{
if(a[i]==a[j])
{
sum++;
a[j]='0';
continue;
}
else
break;

}
if(sum>2)
{
a[i]=a[i]-32;
a[j-sum+2]='0'+sum;
break;
}
}
reverse(a.begin(),a.end());
}
for(i=0;i<len;i++)
if(a[i]!='0')
cout<<a[i];
cout<<endl;
a="";
}
return 0;
}
...全文
184 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
这种加密逻辑不可行吧, 如果出现前后不足两个字符串呢?怎么处理 bcaaaaaae
FoolCarpe 2018-01-05
  • 打赏
  • 举报
回复
调试

64,282

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧