- #include <iostream> 
- #include <string> 
- #include <set> 
- #include <algorithm> 
- #include <iterator> 
-   
- bool containsPrt(const std::string &str, const std::string &prt) 
- { 
- 	std::set<char> s1(str.begin(), str.end()); 
- 	std::set<char> s2(prt.begin(), prt.end()); 
- 	std::set<char> result; 
- 	std::set_intersection( 
- 		s1.begin(), s1.end(), s2.begin(), s2.end(), 
- 		std::inserter(result, result.begin())); 
- 	return result == s2; 
- } 
-   
-   
- int main() 
- { 
- 	std::string str; 
- 	std::string prt; 
-   
- 	str = "Pegasus"; 
- 	prt = "eas"; 
-   
- 	if (containsPrt(str, prt)) 
- 		std::cout << str << " contains " << prt << std::endl; 
- 	else 
- 		std::cout << str << " does not contain " << prt << std::endl; 
-   
- 	str = "Pegasus"; 
- 	prt = "eat"; 
-   
- 	if (containsPrt(str, prt)) 
- 		std::cout << str << " contains " << prt << std::endl; 
- 	else 
- 		std::cout << str << " does not contain " << prt << std::endl; 
-   
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8c2V0PgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8aXRlcmF0b3I+Cgpib29sIGNvbnRhaW5zUHJ0KGNvbnN0IHN0ZDo6c3RyaW5nICZzdHIsIGNvbnN0IHN0ZDo6c3RyaW5nICZwcnQpCnsKCXN0ZDo6c2V0PGNoYXI+IHMxKHN0ci5iZWdpbigpLCBzdHIuZW5kKCkpOwoJc3RkOjpzZXQ8Y2hhcj4gczIocHJ0LmJlZ2luKCksIHBydC5lbmQoKSk7CglzdGQ6OnNldDxjaGFyPiByZXN1bHQ7CglzdGQ6OnNldF9pbnRlcnNlY3Rpb24oCgkJczEuYmVnaW4oKSwgczEuZW5kKCksIHMyLmJlZ2luKCksIHMyLmVuZCgpLAoJCXN0ZDo6aW5zZXJ0ZXIocmVzdWx0LCByZXN1bHQuYmVnaW4oKSkpOwoJcmV0dXJuIHJlc3VsdCA9PSBzMjsKfQoKCmludCBtYWluKCkKewoJc3RkOjpzdHJpbmcgc3RyOwoJc3RkOjpzdHJpbmcgcHJ0OwoKCXN0ciA9ICJQZWdhc3VzIjsKCXBydCA9ICJlYXMiOwoKCWlmIChjb250YWluc1BydChzdHIsIHBydCkpCgkJc3RkOjpjb3V0IDw8IHN0ciA8PCAiIGNvbnRhaW5zICIgPDwgcHJ0IDw8IHN0ZDo6ZW5kbDsKCWVsc2UKCQlzdGQ6OmNvdXQgPDwgc3RyIDw8ICIgZG9lcyBub3QgY29udGFpbiAiIDw8IHBydCA8PCBzdGQ6OmVuZGw7CgoJc3RyID0gIlBlZ2FzdXMiOwoJcHJ0ID0gImVhdCI7CgoJaWYgKGNvbnRhaW5zUHJ0KHN0ciwgcHJ0KSkKCQlzdGQ6OmNvdXQgPDwgc3RyIDw8ICIgY29udGFpbnMgIiA8PCBwcnQgPDwgc3RkOjplbmRsOwoJZWxzZQoJCXN0ZDo6Y291dCA8PCBzdHIgPDwgIiBkb2VzIG5vdCBjb250YWluICIgPDwgcHJ0IDw8IHN0ZDo6ZW5kbDsKCglyZXR1cm4gMDsKfQ==