题解 | #单词替换#
单词替换
https://www.nowcoder.com/practice/5b58a04679d5419caf62c2b238e5c9c7
#include <iostream>
#include<algorithm>
#include<vector>
using namespace std;
void print(string s,string s1,string s2)
{
int length=s.length();
int i=0;
vector<string>strarray;
while(i<length)
{
string cur="";
while(s[i]!=' '&&s[i]!='\n'&&i<length)
{
cur+=s[i];
i++;
}
i++;
strarray.push_back(cur);
//cout<<cur<<endl;
}
int size=strarray.size();
//cout<<"size="<<size<<endl;
string s3="";
for(int i=0;i<size;i++)
{
if(strarray[i]==s1)
{
strarray[i]=s2;
}
}
for(int i=0;i<size-1;i++)
{
s3+=strarray[i]+" ";
}
s3+=strarray[size-1]+'\n';
cout<<s3;
}
int main() {
string s,s1,s2;
while (getline(cin,s)) { // 注意 while 处理多个 case
getline(cin,s1);
getline(cin,s2);
print(s,s1,s2);
}
}
// 64 位输出请用 printf("%lld")
查看3道真题和解析