#include <string>
#include <unordered_set>
#include <iostream>
#include <algorithm>
using namespace std;
int lengthOfLongestSubstring(string s) {
unordered_set<char> sub;
size_t max_len = 0;
std::for_each(s.begin(), s.end(), [&](char ch)
{
if (sub.count(ch))
{
max_len = std::max(sub.size(), max_len);
sub.clear();
}
sub.insert(ch);
});
return max_len;
}
int main()
{
std::cout << lengthOfLongestSubstring("neinaon");
}
I2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPHVub3JkZXJlZF9zZXQ+CiNpbmNsdWRlIDxpb3N0cmVhbT4KI2luY2x1ZGUgPGFsZ29yaXRobT4KCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbGVuZ3RoT2ZMb25nZXN0U3Vic3RyaW5nKHN0cmluZyBzKSB7CiAgICB1bm9yZGVyZWRfc2V0PGNoYXI+IHN1YjsKICAgIHNpemVfdCBtYXhfbGVuID0gMDsKCiAgICBzdGQ6OmZvcl9lYWNoKHMuYmVnaW4oKSwgcy5lbmQoKSwgWyZdKGNoYXIgY2gpCiAgICB7CiAgICAgICAgaWYgKHN1Yi5jb3VudChjaCkpCiAgICAgICAgewogICAgICAgICAgICBtYXhfbGVuID0gc3RkOjptYXgoc3ViLnNpemUoKSwgbWF4X2xlbik7CiAgICAgICAgICAgIHN1Yi5jbGVhcigpOwogICAgICAgIH0KICAgICAgICBzdWIuaW5zZXJ0KGNoKTsKICAgIH0pOwogICAgcmV0dXJuIG1heF9sZW47Cn0KCmludCBtYWluKCkKewogICAgc3RkOjpjb3V0IDw8IGxlbmd0aE9mTG9uZ2VzdFN1YnN0cmluZygibmVpbmFvbiIpOwp9