#include <iostream>
#include <string>
#include <boost/algorithm/searching/boyer_moore.hpp>
int main() {
std::string corpus("hello world");
std::string pattern("hello");
boost::algorithm::boyer_moore<std::string::const_iterator>
search(pattern.begin(), pattern.end());
if (corpus.end() != search(corpus.begin(), corpus.end()))
{
std::cout << "pattern found";
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8Ym9vc3QvYWxnb3JpdGhtL3NlYXJjaGluZy9ib3llcl9tb29yZS5ocHA+CgppbnQgbWFpbigpIHsKCXN0ZDo6c3RyaW5nIGNvcnB1cygiaGVsbG8gd29ybGQiKTsKCXN0ZDo6c3RyaW5nIHBhdHRlcm4oImhlbGxvIik7CgkKCWJvb3N0OjphbGdvcml0aG06OmJveWVyX21vb3JlPHN0ZDo6c3RyaW5nOjpjb25zdF9pdGVyYXRvcj4KICAgIAlzZWFyY2gocGF0dGVybi5iZWdpbigpLCBwYXR0ZXJuLmVuZCgpKTsKICAgIAkKICAgIGlmIChjb3JwdXMuZW5kKCkgIT0gc2VhcmNoKGNvcnB1cy5iZWdpbigpLCBjb3JwdXMuZW5kKCkpKQogICAgewogICAgCXN0ZDo6Y291dCA8PCAicGF0dGVybiBmb3VuZCI7CiAgICB9CglyZXR1cm4gMDsKfQ==