Advertisement
Spocoman

05. Maximal Sum

Jan 27th, 2024
1,147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.12 KB | None | 0 0
  1. #include <iostream>
  2. #include <vector>
  3.  
  4. using namespace std;
  5.  
  6. int main() {
  7.     int row, col, n;
  8.     cin >> row >> col;
  9.  
  10.     vector<vector<int>> matrix;
  11.  
  12.     for (int i = 0; i < row; i++) {
  13.         vector<int> currentRow;
  14.         for (int j = 0; j < col; j++) {
  15.             cin >> n;
  16.             currentRow.push_back(n);
  17.         }
  18.         matrix.push_back(currentRow);
  19.     }
  20.  
  21.     int maxSum = 0, r = 0, c = 0;
  22.  
  23.     for (int i = 0; i < row - 2; i++) {
  24.         int sum = 0;
  25.         for (int j = 0; j < col - 2; j++) {
  26.             sum = matrix[i][j] + matrix[i][j + 1] + matrix[i][j + 2] +
  27.                 matrix[i + 1][j] + matrix[i + 1][j + 1] + matrix[i + 1][j + 2] +
  28.                 matrix[i + 2][j] + matrix[i + 2][j + 1] + matrix[i + 2][j + 2];
  29.  
  30.             if (sum > maxSum) {
  31.                 maxSum = sum;
  32.                 r = i;
  33.                 c = j;
  34.             }
  35.         }
  36.     }
  37.  
  38.     cout << "Sum = " << maxSum << endl;
  39.  
  40.     for (int i = r; i < r + 3; i++) {
  41.         for (int j = c; j < c + 3; j++) {
  42.             cout << matrix[i][j] << ' ';
  43.         }
  44.         cout << endl;
  45.     }
  46.  
  47.     return 0;
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement