#include <vector>
#include <string>
std::vector<std::string> DIFSplitStringByNumber(const std::string & str, int len)
{
std::vector<std::string> entries;
for(std::string::const_iterator it(str.begin()); it != str.end();)
{
int nbChar = std::min(len,(int)std::distance(it,str.end()));
entries.push_back(std::string(it,it+nbChar));
it=it+nbChar;
};
return entries;
}
#include <iostream>
int main() {
for (auto str : DIFSplitStringByNumber("hello", 2)) {
std::cout << str << std::endl;
}
return 0;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHN0cmluZz4KCnN0ZDo6dmVjdG9yPHN0ZDo6c3RyaW5nPiBESUZTcGxpdFN0cmluZ0J5TnVtYmVyKGNvbnN0IHN0ZDo6c3RyaW5nICYgc3RyLCBpbnQgbGVuKQp7CiAgICBzdGQ6OnZlY3RvcjxzdGQ6OnN0cmluZz4gZW50cmllczsKICAgIGZvcihzdGQ6OnN0cmluZzo6Y29uc3RfaXRlcmF0b3IgaXQoc3RyLmJlZ2luKCkpOyBpdCAhPSBzdHIuZW5kKCk7KQogICAgewogICAgICAgIGludCBuYkNoYXIgPSBzdGQ6Om1pbihsZW4sKGludClzdGQ6OmRpc3RhbmNlKGl0LHN0ci5lbmQoKSkpOwogICAgICAgIGVudHJpZXMucHVzaF9iYWNrKHN0ZDo6c3RyaW5nKGl0LGl0K25iQ2hhcikpOwogICAgICAgIGl0PWl0K25iQ2hhcjsKICAgIH07CiAgICByZXR1cm4gZW50cmllczsKfQoKI2luY2x1ZGUgPGlvc3RyZWFtPgppbnQgbWFpbigpIHsKICAgIGZvciAoYXV0byBzdHIgOiBESUZTcGxpdFN0cmluZ0J5TnVtYmVyKCJoZWxsbyIsIDIpKSB7CiAgICAgIHN0ZDo6Y291dCA8PCBzdHIgPDwgc3RkOjplbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0=