#include <iostream>
#include <sstream>
#include <vector>
#include <string>
std::vector<std::string> split(const std::string &in, const char delim)
{
std::vector<std::string> results;
std::string working;
for (const char c : in)
{
if (c == delim)
{
results.push_back(working);
working.clear();
}
else
working.push_back(c);
}
results.push_back(working);
return results;
}
int main()
{
std::vector<std::string> rs = split("a,b,c,", ',');
std::cout << rs.size() << std::endl;
for (const std::string &s : rs)
std::cout << s << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KI2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHN0cmluZz4KCnN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBzcGxpdChjb25zdCBzdGQ6OnN0cmluZyAmaW4sIGNvbnN0IGNoYXIgZGVsaW0pCnsKICAgIHN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiByZXN1bHRzOwogICAgc3RkOjpzdHJpbmcgd29ya2luZzsKICAgIGZvciAoY29uc3QgY2hhciBjIDogaW4pCiAgICB7CiAgICAgICAgaWYgKGMgPT0gZGVsaW0pCiAgICAgICAgewogICAgICAgICAgICByZXN1bHRzLnB1c2hfYmFjayh3b3JraW5nKTsKICAgICAgICAgICAgd29ya2luZy5jbGVhcigpOwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgICAgIHdvcmtpbmcucHVzaF9iYWNrKGMpOwogICAgfQogICAgcmVzdWx0cy5wdXNoX2JhY2sod29ya2luZyk7CiAgICByZXR1cm4gcmVzdWx0czsKfQoKaW50IG1haW4oKQp7CgoJc3RkOjp2ZWN0b3I8c3RkOjpzdHJpbmc+IHJzID0gc3BsaXQoImEsYixjLCIsICcsJyk7CglzdGQ6OmNvdXQgPDwgcnMuc2l6ZSgpIDw8IHN0ZDo6ZW5kbDsKCWZvciAoY29uc3Qgc3RkOjpzdHJpbmcgJnMgOiBycykKCQlzdGQ6OmNvdXQgPDwgcyA8PCBzdGQ6OmVuZGw7CglyZXR1cm4gMDsKfQ==