#include <bits/stdc++.h>
using namespace std;
unordered_map<string, string> umap;
void split(const std::string &line, char sep, int index)
{
std::size_t start = 0, end = 0;
char ch = index + '0';
string key("");
while ((end = line.find(sep, start)) != std::string::npos)
{
key += ch;
ch++;
//key = ch++ + index;
cout<<key<<endl;
cout<<line.substr(start, end - start)<<endl;
//umap.insert(make_pair<string, string>(key, line.substr(start, end - start)));
//tokens.push_back(text.substr(start, end - start));
start = end + 1;
}
string str = ""+ ch + index;
cout<<str<<endl;
cout<<line.substr(start, end - start)<<endl;
//tokens.push_back(text.substr(start));
// return tokens;
}
int main()
{
int idx = 0;
vector<string>v = { { "This is Test" },
{ "sameple data"} };
for(int i =0; i<v.size(); i++)
{
split(v[i], '\t', idx);
}
for(auto i: umap)
{
cout<<i.first<<" "<<i.second<<endl;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp1bm9yZGVyZWRfbWFwPHN0cmluZywgc3RyaW5nPiB1bWFwOwoKdm9pZCBzcGxpdChjb25zdCBzdGQ6OnN0cmluZyAmbGluZSwgY2hhciBzZXAsIGludCBpbmRleCkgCnsKICBzdGQ6OnNpemVfdCBzdGFydCA9IDAsIGVuZCA9IDA7CiAgY2hhciBjaCA9IGluZGV4ICsgJzAnOwogIHN0cmluZyBrZXkoIiIpOwogIHdoaWxlICgoZW5kID0gbGluZS5maW5kKHNlcCwgc3RhcnQpKSAhPSBzdGQ6OnN0cmluZzo6bnBvcykgCiAgewogIAkga2V5ICs9IGNoOyAKICAJICBjaCsrOwogICAgICAvL2tleSA9IGNoKysgKyBpbmRleDsKICAgICAgY291dDw8a2V5PDxlbmRsOwogICAgICBjb3V0PDxsaW5lLnN1YnN0cihzdGFydCwgZW5kIC0gc3RhcnQpPDxlbmRsOwogICAgICAvL3VtYXAuaW5zZXJ0KG1ha2VfcGFpcjxzdHJpbmcsIHN0cmluZz4oa2V5LCBsaW5lLnN1YnN0cihzdGFydCwgZW5kIC0gc3RhcnQpKSk7CiAgICAvL3Rva2Vucy5wdXNoX2JhY2sodGV4dC5zdWJzdHIoc3RhcnQsIGVuZCAtIHN0YXJ0KSk7CiAgICBzdGFydCA9IGVuZCArIDE7CiAgfQogIHN0cmluZyBzdHIgPSAiIisgY2ggKyBpbmRleDsKICBjb3V0PDxzdHI8PGVuZGw7CiAgY291dDw8bGluZS5zdWJzdHIoc3RhcnQsIGVuZCAtIHN0YXJ0KTw8ZW5kbDsKICAvL3Rva2Vucy5wdXNoX2JhY2sodGV4dC5zdWJzdHIoc3RhcnQpKTsKIC8vIHJldHVybiB0b2tlbnM7Cn0KCmludCBtYWluKCkgCnsKCWludCBpZHggPSAwOwoJdmVjdG9yPHN0cmluZz52ID0geyB7ICJUaGlzCWlzCVRlc3QiIH0sCgkJCQkJCXsgInNhbWVwbGUJZGF0YSJ9IH07CgkJCQkJCQoJZm9yKGludCBpID0wOyBpPHYuc2l6ZSgpOyBpKyspCgl7CgkJc3BsaXQodltpXSwgJ1x0JywgaWR4KTsKCX0KCQoJZm9yKGF1dG8gaTogdW1hcCkJCgl7CgkJY291dDw8aS5maXJzdDw8IiAiPDxpLnNlY29uZDw8ZW5kbDsKCX0KCXJldHVybiAwOwp9