笨蛋做饭-字符串应用-过滤文章中的空格
链接:https://ac.nowcoder.com/acm/contest/93962/K链接:https://ac.nowcoder.com/acm/contest/93962/K
来源:牛客网
过滤多余的空格。一篇文章中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。
输入描述:
一行,一个字符串(长度不超过1000)
输出描述:
过滤之后的文章。
输入
Hello world.This is c++ language.
输出
Hello world.This is c++ language.
这道题刚开始做感觉有想法但是就是写不出来,后来想放弃,用AI写,但是AI写的东西看不懂一点,就想用AI改一下我的想法;
但是AI改出来的不对,也不好用,我就又找出了一种笨方法。
首先循环遍历字符,当出现空格时看后一位如果是空格,就把后一位改成1;但是经过一次改换后就变成了1空格1空格的形式,所以在当1后边有空格时再把空格换成1,最后输出除了1的字符。
#include <iostream>
#include <string>
using namespace std;
int main()
{
string s,s1;
getline(cin,s);
for(int i=0;i<s.size();i++){
if(s[i]==' '){
if(s[i+1]==' '){
s[i+1]='1';
}
else if(s[i-1]=='1'){
s[i]='1';
}
}
if(s[i-1]=='1'&&s[i]==' '){
s[i]='1';
}
}
for(int i=0;i<s.size();i++){
if(s[i]!='1'){
cout<<s[i];
}
}
return 0;
}