Set Multiset C++

#include 
#include 
#include 
#include 
#include 
using namespace std;
int main()
{
  string s("There is no distinctly native American criminal class");
  string s2("American criminal class");
  list list1(s.begin(), s.end());
  list list2(s2.begin(), s2.end());
  list found, not_found;
  list::iterator k;
  multiset multiset1;
  copy(list1.begin(), list1.end(),inserter(multiset1, multiset1.end()));
  for (k = list2.begin(); k != list2.end(); ++k)
    if (multiset1.find(*k) != multiset1.end())
      found.push_back(*k);
    else
      not_found.push_back(*k);
  for (k = found.begin(); k != found.end(); ++k)
    cout << *k;
  for (k = not_found.begin(); k != not_found.end(); ++k)
    cout << *k;
  return 0;
}
  /* 
American criminal class
 */