#include <string.h>
#include <unordered_set>
#include <iostream>
using namespace std;
int main()
{
char arr[] = "aaa bbb,aa, bbb\ta aa bb";
unordered_set<string> uniqWords;
char *token = strtok(arr, " \t,.:;\r\n!?");
while (token != NULL)
{
uniqWords.insert(token);
token = strtok(NULL, " ");
}
cout << "Unique words = " << uniqWords.size() << '\n';
return 0;
}
I2luY2x1ZGUgPHN0cmluZy5oPgojaW5jbHVkZSA8dW5vcmRlcmVkX3NldD4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBtYWluKCkgCnsKCSAgY2hhciBhcnJbXSA9ICJhYWEgYmJiLGFhLCBiYmJcdGEgYWEgICAgYmIiOwogICAgICB1bm9yZGVyZWRfc2V0PHN0cmluZz4gdW5pcVdvcmRzOwogICAgICBjaGFyICp0b2tlbiA9IHN0cnRvayhhcnIsICIgXHQsLjo7XHJcbiE/Iik7CiAgICAgIHdoaWxlICh0b2tlbiAhPSBOVUxMKQogICAgICB7CiAgICAgICAgICAgIHVuaXFXb3Jkcy5pbnNlcnQodG9rZW4pOwogICAgICAgICAgICB0b2tlbiA9IHN0cnRvayhOVUxMLCAiICIpOwogICAgICB9CiAgICAgIAogICAgICBjb3V0IDw8ICJVbmlxdWUgd29yZHMgPSAiIDw8IHVuaXFXb3Jkcy5zaXplKCkgPDwgJ1xuJzsKICAgICAgCgkgIHJldHVybiAwOwp9