#include <iostream>
#include <sstream>
#include <string>
#include <algorithm>
#include <iterator>
#include <list>
int main()
{
std::string str;
std::string tokens;
std::cout << "string:\n";
std::getline(std::cin, str);
std::cout << "tokens:\n";
std::cin >> tokens;
using isit = std::istream_iterator<std::string>;
std::stringstream ss(str);
std::list<std::string> words( isit( ss ), ( isit() ) );
str.clear();
ss.clear();
ss.str(str);
std::copy_if( begin(words), end(words), std::ostream_iterator<std::string>(ss, " "),
[&tokens](const std::string &word)
{ return word.find_first_of(tokens) == std::string::npos; } );
std::cout << "result:\n";
std::cout << ss.str();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGl0ZXJhdG9yPgojaW5jbHVkZSA8bGlzdD4KCmludCBtYWluKCkKewogICAgc3RkOjpzdHJpbmcgc3RyOwoJc3RkOjpzdHJpbmcgdG9rZW5zOwoJc3RkOjpjb3V0IDw8ICJzdHJpbmc6XG4iOwoJc3RkOjpnZXRsaW5lKHN0ZDo6Y2luLCBzdHIpOwoJc3RkOjpjb3V0IDw8ICJ0b2tlbnM6XG4iOwoJc3RkOjpjaW4gPj4gdG9rZW5zOwoJdXNpbmcgaXNpdCA9IHN0ZDo6aXN0cmVhbV9pdGVyYXRvcjxzdGQ6OnN0cmluZz47CglzdGQ6OnN0cmluZ3N0cmVhbSBzcyhzdHIpOwoJc3RkOjpsaXN0PHN0ZDo6c3RyaW5nPiB3b3JkcyggaXNpdCggc3MgKSwgKCBpc2l0KCkgKSApOwoJc3RyLmNsZWFyKCk7Cglzcy5jbGVhcigpOwoJc3Muc3RyKHN0cik7CglzdGQ6OmNvcHlfaWYoIGJlZ2luKHdvcmRzKSwgZW5kKHdvcmRzKSwgc3RkOjpvc3RyZWFtX2l0ZXJhdG9yPHN0ZDo6c3RyaW5nPihzcywgIiAiKSwKCQkJCVsmdG9rZW5zXShjb25zdCBzdGQ6OnN0cmluZyAmd29yZCkKCQkJCXsgcmV0dXJuIHdvcmQuZmluZF9maXJzdF9vZih0b2tlbnMpID09IHN0ZDo6c3RyaW5nOjpucG9zOyB9ICk7CglzdGQ6OmNvdXQgPDwgInJlc3VsdDpcbiI7CglzdGQ6OmNvdXQgPDwgc3Muc3RyKCk7CiAgICByZXR1cm4gMDsKfQ==