#include <iostream>
#include <vector>
template<typename T>
std::vector<std::vector<T>> vvalloc(const int rows, const int cols){
return std::vector<std::vector<T>>(rows, std::vector<T>(cols));
}
template<typename T>
void vvprint(const std::vector<std::vector<T>>& rhs){
for(int p=0; p<rhs.size(); p++){
std::cout << "[ ";
for(int q=0; q<rhs[p].size(); q++){
std::cout << rhs[p][q] << ' ';
}
std::cout << "]" << std::endl;
}
}
int main(){
std::vector<std::vector<int>> vvec = vvalloc<int>(3, 3);
int i=0;
for(int p=0; p<vvec.size(); p++){
for(int q=0; q<vvec[p].size(); q++){
vvec[p][q] = i++;
}
}
vvprint<int>(vvec);
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKdGVtcGxhdGU8dHlwZW5hbWUgVD4Kc3RkOjp2ZWN0b3I8c3RkOjp2ZWN0b3I8VD4+IHZ2YWxsb2MoY29uc3QgaW50IHJvd3MsIGNvbnN0IGludCBjb2xzKXsKICAgIHJldHVybiBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3RvcjxUPj4ocm93cywgc3RkOjp2ZWN0b3I8VD4oY29scykpOwp9Cgp0ZW1wbGF0ZTx0eXBlbmFtZSBUPgp2b2lkIHZ2cHJpbnQoY29uc3Qgc3RkOjp2ZWN0b3I8c3RkOjp2ZWN0b3I8VD4+JiByaHMpewogICAgZm9yKGludCBwPTA7IHA8cmhzLnNpemUoKTsgcCsrKXsKICAgICAgICBzdGQ6OmNvdXQgPDwgIlsgIjsKICAgICAgICBmb3IoaW50IHE9MDsgcTxyaHNbcF0uc2l6ZSgpOyBxKyspewogICAgICAgICAgICBzdGQ6OmNvdXQgPDwgcmhzW3BdW3FdIDw8ICcgJzsKICAgICAgICB9CiAgICAgICAgc3RkOjpjb3V0IDw8ICJdIiA8PCBzdGQ6OmVuZGw7CiAgICB9Cn0KCmludCBtYWluKCl7CiAgICBzdGQ6OnZlY3RvcjxzdGQ6OnZlY3RvcjxpbnQ+PiB2dmVjID0gdnZhbGxvYzxpbnQ+KDMsIDMpOwogICAgCiAgICBpbnQgaT0wOwogICAgZm9yKGludCBwPTA7IHA8dnZlYy5zaXplKCk7IHArKyl7CiAgICAgICAgZm9yKGludCBxPTA7IHE8dnZlY1twXS5zaXplKCk7IHErKyl7CiAgICAgICAgICAgIHZ2ZWNbcF1bcV0gPSBpKys7CiAgICAgICAgfQogICAgfQogICAgCiAgICB2dnByaW50PGludD4odnZlYyk7CiAgICByZXR1cm4gMDsKfQ==