题解 | 单词替换

单词替换

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

用数组保存每个单词,遍历数组拼接结果字符串,遍历过程中如果该单词为要被替换的,则拼接替换后的单词,否则拼接原单词,最后输入结果字符串


#include<iostream>
#include<map>
#include<queue>
#include<algorithm>
#include<string>
using namespace std;

int main() {
    string str;
    vector<string> s;
    string c;
    string v;
    while (getline(cin, str) && getline(cin, c) &&getline(cin,v)) {
        string tmp = "";
	  //将每个单词放在数组中
        for (int i = 0; i < str.size(); i++) {
            if (str[i] != ' '&&i!=str.size()-1) {
                tmp += str[i];
            }
            else if (str[i] == ' ') {
                s.push_back(tmp);
                tmp.clear();
            }
            else if (i == str.size() - 1) {
                tmp += str[i];
                s.push_back(tmp);
                tmp.clear();
            }
            else {
                //什么也不做。
            }
        }
        string jiegou;
	  //拼接结果字符串
        for (int i = 0; i < s.size(); i++) {
            if (s[i] == c) {
                jiegou =jiegou+ v+" ";
            }
            else {
                jiegou = jiegou + s[i] + " ";
            }

        }
        cout << jiegou << endl;


    }
   
    return 0;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务