fork download
  1. #include <iostream>
  2. #include <algorithm>
  3. #include <string>
  4. #include <vector>
  5. #include <unordered_set>
  6.  
  7. using namespace std;
  8.  
  9. vector<string> findWords( const vector<string> &wordsToSearchIn,
  10. const unordered_set<string> &wordsToReject )
  11. {
  12. vector<string> result( wordsToSearchIn.size() ) ;
  13. auto pred = [wordsToReject]( const string &word )
  14. {
  15. return wordsToReject.find( word ) == wordsToReject.end();
  16. };
  17.  
  18. auto it = copy_if( wordsToSearchIn.begin(),
  19. wordsToSearchIn.end(),
  20. result.begin(),
  21. pred );
  22.  
  23. result.resize( distance( result.begin(), it) );
  24.  
  25. return result;
  26. }
  27.  
  28. int main()
  29. {
  30. vector<string> wordsToSearchIn{ "siema", "herbata", "krzeslo" };
  31. unordered_set<string> wordsToReject{ "herbata" };
  32.  
  33. auto result = findWords( wordsToSearchIn, wordsToReject );
  34.  
  35. for( const auto &word : result )
  36. cout<<word<<"\n";
  37.  
  38. return 0;
  39. }
Success #stdin #stdout 0s 3464KB
stdin
Standard input is empty
stdout
siema
krzeslo