// 2024 IUSB Programming Competition // Round 1 Problem 5 // Sky Scan // Solution by Liguo Yu #include #include int main() { int m, n, r; std::cin >> m >> n >> r; int size_full_scan = m * n * 2; int size_1d = size_full_scan * r; std::vector data(size_1d); for (int i = 0; i < size_1d; i++) { std::cin >> data[i]; } std::vector> array(m, std::vector(n, 0.0)); for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { array[i][j] = 0.0; for (int k = 0; k < r; k++) { if (i % 2 == 0) { array[i][j] = array[i][j] + data[k * size_full_scan + i * n + j]; array[i][j] = array[i][j] + data[(k + 1) * size_full_scan - i * n - j - 1]; } else { array[i][j] = array[i][j] + data[k * size_full_scan + i * n + n - j - 1]; array[i][j] = array[i][j] + data[(k + 1) * size_full_scan - i * n - (n - j)]; } } } } double strongest = array[0][0]; for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if (array[i][j] > strongest) strongest = array[i][j]; } } for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if (array[i][j] == strongest) std::cout << "(" << i << ", " << j << ") "; } } return 0; }