#include <iostream>
#include <sstream>
int main()
{
std::string data = "5,9,2,\n2,3,4,\n9,1,0,\n";
int array[3][3];
for(auto& a : data)
if(a == ',')
a = ' ';
std::pair<int, int> position(0, 0);
std::istringstream iss(data);
for(std::string buffer; std::getline(iss, buffer); ++position.second)
{
std::stringstream ss(buffer);
int val = 0;
while(ss >> val)
{
array[position.first++][position.second] = val;
}
position.first = 0;
}
for(unsigned int i = 0U; i < 9U; ++i)
{
std::cout << array[i%3][static_cast<int>(i/3)] << " " << ((i % 3U == 2U)?("\n"):(""));
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3N0cmVhbT4KCmludCBtYWluKCkKewogICAgc3RkOjpzdHJpbmcgZGF0YSA9ICI1LDksMixcbjIsMyw0LFxuOSwxLDAsXG4iOwogICAgaW50IGFycmF5WzNdWzNdOwogICAgZm9yKGF1dG8mIGEgOiBkYXRhKQogICAgICAgIGlmKGEgPT0gJywnKQogICAgICAgICAgICBhID0gJyAnOwogICAgICAgICAgICAKICAgIHN0ZDo6cGFpcjxpbnQsIGludD4gcG9zaXRpb24oMCwgMCk7CiAgICBzdGQ6OmlzdHJpbmdzdHJlYW0gaXNzKGRhdGEpOwogICAgZm9yKHN0ZDo6c3RyaW5nIGJ1ZmZlcjsgc3RkOjpnZXRsaW5lKGlzcywgYnVmZmVyKTsgKytwb3NpdGlvbi5zZWNvbmQpCiAgICB7CiAgICAgICAgc3RkOjpzdHJpbmdzdHJlYW0gc3MoYnVmZmVyKTsKICAgICAgICBpbnQgdmFsID0gMDsKICAgICAgICB3aGlsZShzcyA+PiB2YWwpCiAgICAgICAgewogICAgICAgICAgICBhcnJheVtwb3NpdGlvbi5maXJzdCsrXVtwb3NpdGlvbi5zZWNvbmRdID0gdmFsOwogICAgICAgIH0KICAgICAgICBwb3NpdGlvbi5maXJzdCA9IDA7CiAgICB9CiAgICAKICAgIGZvcih1bnNpZ25lZCBpbnQgaSA9IDBVOyBpIDwgOVU7ICsraSkKICAgIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgYXJyYXlbaSUzXVtzdGF0aWNfY2FzdDxpbnQ+KGkvMyldIDw8ICIgIiA8PCAoKGkgJSAzVSA9PSAyVSk/KCJcbiIpOigiIikpOwogICAgfQp9