766. 去掉多余的空格
作者:
L_537
,
2025-03-08 16:52:33
· 吉林
,
所有人可见
,
阅读 1
//法一
#include <iostream>
using namespace std;
int main()
{
string s;
while(cin>>s) cout<<s<<' '; //cin会以空格,制表符或换行符为分隔符
return 0;
}
//法二 第一类双指针算法
#include <iostream>
using namespace std;
int main()
{
string s;
getline(cin,s);
string r;
for(int i=0;i<s.size();i++)
if(s[i]!=' ') r+=s[i];
else{
r+=' ';
int j=i;
while(j<s.size()&&s[j]==' ') j++;
i=j-1;
}
cout<<r<<endl;
return 0;
}
//法三 局部性判断方法
#include <iostream>
using namespace std;
int main()
{
string s;
getline(cin,s);
string r;
for(int i=0;i<s.size();i++)
if(s[i]!=' ') r+=s[i];
else{
if(!i||s[i-1]!=' ') r+=' ';
}
cout<<r<<endl;
return 0;
}