您的位置:首页 > 其它

hihoCoder题库1082然而沼泽鱼早就看穿了一切

2016-04-04 19:58 274 查看
题目

时间限制:1000ms
单点时限:1000ms
内存限制:256MB


描述



fjxmlhx每天都在被沼跃鱼刷屏,因此他急切的找到了你希望你写一个程序屏蔽所有句子中的沼跃鱼(“marshtomp”,不区分大小写)。为了使句子不缺少成分,统一换成 “fjxmlhx” 。


输入

输入包括多行。
每行是一个字符串,长度不超过200。
一行的末尾与下一行的开头没有关系。


输出

输出包含多行,为输入按照描述中变换的结果。

样例输入
The Marshtomp has seen it all before.
marshTomp is beaten by fjxmlhx!
AmarshtompB


样例输出
The fjxmlhx has seen it all before.
fjxmlhx is beaten by fjxmlhx!
AfjxmlhxB

我的代码(已A)

#include<iostream>
#include<string>
using namespace std;

bool check(int i,string a){
if((a[i]=='M'||a[i]=='m')&&(a[i+1]=='A'||a[i+1]=='a')&&(a[i+2]=='R'||a[i+2]=='r')&&
(a[i+3]=='S'||a[i+3]=='s')&&(a[i+4]=='H'||a[i+4]=='h')&&(a[i+5]=='T'||a[i+5]=='t')&&
(a[i+6]=='O'||a[i+6]=='o')&&(a[i+7]=='M'||a[i+7]=='m')&&(a[i+8]=='P'||a[i+8]=='p')){
return true;
}
else return false;
}

int main(){
s
87e4
tring str;
string change="fjxmlhx";
while(getline(cin,str)) {
string str1="";
int j = 0;
for(int i = 0; i < str.size(); i++) {
if(check(i,str)) {{
str1=str1+change;
i= i + 8;
}
}
else str1=str1+str[i];
}
cout<<str1<< endl;
}
return 0 ;
}这道题一开始没有做成了这样后没有提交,还在考虑字符串如果忽略回车键输入,那么要怎么判断输入完毕了。然后就去查了别人的代码,结果发现已A的代码也是一行一行输出的,我就试了下提交别人的代码果然A了,然后又提交了这个代码也A了,就觉得很坑爹,可能是我经验不够,不了解题目的意思,下次遇到不在一开始说明输入几组的程序,就试着编成一组一组输出。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: