#include <iostream>
#include <vector>
#include <boost/algorithm/string.hpp>
using namespace std;
struct sNssaiWithDnn
{
std::string sliceServiceType;
std::string sliceDifferentiator;
uint8_t sliceServiceTypeUint8;
std::vector<std::string> dnn;
sNssaiWithDnn() : sliceServiceType(""), sliceDifferentiator(""), sliceServiceTypeUint8(0)
{
}
bool compare(const sNssaiWithDnn& snssai) const
{
if (snssai.sliceServiceType.compare(sliceServiceType) != 0)
return false;
else if (snssai.sliceDifferentiator.compare(sliceDifferentiator) != 0)
return false;
else if (snssai.sliceServiceTypeUint8 != sliceServiceTypeUint8)
return false;
else if (!(boost::iequals(snssai.dnn,dnn)))
return false;
return true;
}
};
int main() {
std::vector<std::string> dnn1;
std::vector<std::string> dnn2;
if (!(boost::iequals(dnn1,dnn2)))
{
cout << "Error" << endl;
}
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Ym9vc3QvYWxnb3JpdGhtL3N0cmluZy5ocHA+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IHNOc3NhaVdpdGhEbm4KewogICBzdGQ6OnN0cmluZyBzbGljZVNlcnZpY2VUeXBlOwogICBzdGQ6OnN0cmluZyBzbGljZURpZmZlcmVudGlhdG9yOwogICB1aW50OF90IHNsaWNlU2VydmljZVR5cGVVaW50ODsKICAgc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IGRubjsKCiAgIHNOc3NhaVdpdGhEbm4oKSA6IHNsaWNlU2VydmljZVR5cGUoIiIpLCBzbGljZURpZmZlcmVudGlhdG9yKCIiKSwgc2xpY2VTZXJ2aWNlVHlwZVVpbnQ4KDApCiAgIHsKICAgfQoKICAgYm9vbCBjb21wYXJlKGNvbnN0IHNOc3NhaVdpdGhEbm4mIHNuc3NhaSkgY29uc3QKICAgewogICAgICBpZiAoc25zc2FpLnNsaWNlU2VydmljZVR5cGUuY29tcGFyZShzbGljZVNlcnZpY2VUeXBlKSAhPSAwKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgIGVsc2UgaWYgKHNuc3NhaS5zbGljZURpZmZlcmVudGlhdG9yLmNvbXBhcmUoc2xpY2VEaWZmZXJlbnRpYXRvcikgIT0gMCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICBlbHNlIGlmIChzbnNzYWkuc2xpY2VTZXJ2aWNlVHlwZVVpbnQ4ICE9IHNsaWNlU2VydmljZVR5cGVVaW50OCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICBlbHNlIGlmICghKGJvb3N0OjppZXF1YWxzKHNuc3NhaS5kbm4sZG5uKSkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICAgcmV0dXJuIHRydWU7CiAgIH0KfTsKCmludCBtYWluKCkgewoJCglzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gZG5uMTsKCXN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBkbm4yOwoJCglpZiAoIShib29zdDo6aWVxdWFscyhkbm4xLGRubjIpKSkKCXsKCQljb3V0IDw8ICJFcnJvciIgPDwgZW5kbDsKCX0KCQoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJcmV0dXJuIDA7Cn0=