题解 | #单词替换#

单词替换

https://www.nowcoder.com/practice/5b58a04679d5419caf62c2b238e5c9c7

  • 基本思路:对输入串进行预处理,将字符串切分为单词,存入迭代器;
  • 然后遍历迭代器,将单词逐个与目标词对比,判断是否需要替换,同时输出;
  • 为了处理过程正确性,需要给输入串末尾添上空格。
#include <iostream>
#include <vector>
using namespace std;
vector<string> str2word(string str){
    vector<string> ans;
    for(int i=0;i<str.length();i++){
        string word;
        while(str[i]!=' '){
            word+=str[i++];
        }
        ans.push_back(word);
    }
    return ans;
}
int main() {
    string str,a,b;
    getline(cin,str);
    str+=' ';
    cin>>a>>b;
    vector<string> word=str2word(str);
    for(int i=0;i<word.size();i++){
        if(word[i]!=a) cout<<word[i]<<" ";
        else cout<<b<<" ";
    }
    return 0;
}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务