#include #include #include #include #include #include #include using namespace std; int main() { ifstream ifs{"SYNONYMS"}; map synonyms{}; transform(istream_iterator{ifs}, istream_iterator{}, inserter(synonyms, begin(synonyms)), [](string const& line) { auto it{find(begin(line), end(line), '=')}; return make_pair(string{begin(line), it}, string{next(it), end(line)}); }); vector words{}; transform(istream_iterator{cin}, istream_iterator{}, back_inserter(words), [&synonyms](string const& word) { auto it{synonyms.find(word)}; if (it != end(synonyms)) return it->second; return word; }); copy(begin(words), end(words), ostream_iterator{cout, " "}); cout << endl; }