- #include <iostream> 
- using namespace std; 
-   
- void print2DArray_with5Columns(int (*ptr_row)[5]) 
- { 
- 	for (int i = 0; i < 3; i++) 
- 	{ 
- 		for (int j = 0; j < 3; j++) 
- 		{ 
- 			std::cout << ptr_row[i][j] << " "; 
- 		} 
- 		std::cout << std::endl; 
- 	} 
-   
- } 
-   
- void print2DArray_withPtrToPtr(int **ptr_row) 
- { 
- 	for (int i = 0; i < 3; i++) 
- 	{ 
- 		for (int j = 0; j < 3; j++) 
- 		{ 
- 			std::cout << ptr_row[i][j] << " "; 
- 		} 
- 		std::cout << std::endl; 
- 	} 
-   
- } 
-   
- int main() 
- { 
- 	int** ptr_array_5by5; 
-   
- 	ptr_array_5by5 = new int*[3]; 
- 	for (int i = 0; i < 3; i++) 
- 	{ 
- 		ptr_array_5by5[i] = new int[3]; 
- 		for (int j = 0; j < 3; j++) 
- 		{ 
- 			ptr_array_5by5[i][j] = i*j; 
- 		} 
- 	} 
-   
- 	print2DArray_with5Columns(reinterpret_cast<int (*)[5]>(ptr_array_5by5)); 
-   
- 	std::cout << std::endl; 
-   
- 	print2DArray_withPtrToPtr(ptr_array_5by5); 
-   
- 	return 0; 
- } 
				I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBwcmludDJEQXJyYXlfd2l0aDVDb2x1bW5zKGludCAoKnB0cl9yb3cpWzVdKQp7Cglmb3IgKGludCBpID0gMDsgaSA8IDM7IGkrKykKCXsKCQlmb3IgKGludCBqID0gMDsgaiA8IDM7IGorKykKCQl7CgkJCXN0ZDo6Y291dCA8PCBwdHJfcm93W2ldW2pdIDw8ICIgIjsKCQl9CgkJc3RkOjpjb3V0IDw8IHN0ZDo6ZW5kbDsKCX0KCn0KCnZvaWQgcHJpbnQyREFycmF5X3dpdGhQdHJUb1B0cihpbnQgKipwdHJfcm93KQp7Cglmb3IgKGludCBpID0gMDsgaSA8IDM7IGkrKykKCXsKCQlmb3IgKGludCBqID0gMDsgaiA8IDM7IGorKykKCQl7CgkJCXN0ZDo6Y291dCA8PCBwdHJfcm93W2ldW2pdIDw8ICIgIjsKCQl9CgkJc3RkOjpjb3V0IDw8IHN0ZDo6ZW5kbDsKCX0KCn0KCmludCBtYWluKCkKewoJaW50KiogcHRyX2FycmF5XzVieTU7CgoJcHRyX2FycmF5XzVieTUgPSBuZXcgaW50KlszXTsKCWZvciAoaW50IGkgPSAwOyBpIDwgMzsgaSsrKQoJewoJCXB0cl9hcnJheV81Ynk1W2ldID0gbmV3IGludFszXTsKCQlmb3IgKGludCBqID0gMDsgaiA8IDM7IGorKykKCQl7CgkJCXB0cl9hcnJheV81Ynk1W2ldW2pdID0gaSpqOwoJCX0KCX0KCglwcmludDJEQXJyYXlfd2l0aDVDb2x1bW5zKHJlaW50ZXJwcmV0X2Nhc3Q8aW50ICgqKVs1XT4ocHRyX2FycmF5XzVieTUpKTsKCglzdGQ6OmNvdXQgPDwgc3RkOjplbmRsOwoKCXByaW50MkRBcnJheV93aXRoUHRyVG9QdHIocHRyX2FycmF5XzVieTUpOwoKCXJldHVybiAwOwp9