Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.io.IOException;
- import java.util.*;
- public class Main {
- public static void main(String[] args) {
- Scanner scanner = new Scanner(System.in);
- int[] sizes = Arrays.stream(scanner.nextLine().split(", "))
- .mapToInt(Integer::parseInt)
- .toArray();
- int rows = sizes[0];
- int cols = sizes[1];
- int[][] matrix = new int[rows][cols];
- int maxValue = Integer.MIN_VALUE;
- int[][] maxMatrix = new int[2][2];
- for (int i = 0; i < rows; i++) {
- matrix[i] = Arrays.stream(scanner.nextLine().split(", "))//прочитаме текущия евд от матрицата
- .mapToInt(Integer::parseInt)
- .toArray();
- }
- //правим си цикли за да обхождаме матрицата
- for (int r = 0; r < matrix.length - 1; r++) {// обхождаме редовете
- for (int c = 0; c < matrix[r].length - 1; c++) {//обхождаме колоните
- //намираме сумата на всяка подматрица 2х2:
- int current = matrix[r][c];
- int right = matrix[r][c + 1];
- int below = matrix[r + 1][c];
- int diagonal = matrix[r + 1][c + 1];
- int sum = current + right + below + diagonal;//трябва някъде да си записваме сумата и за това правим променлива maxValue
- if (sum > maxValue) {
- maxValue = sum;
- //тук си записвам стойностите на maxMatrix
- maxMatrix[0][0] = current;
- maxMatrix[0][1] = right;
- maxMatrix[1][0] = below;
- maxMatrix[1][1] = diagonal;
- }
- }
- }
- for (int i = 0; i < 2; i++) {
- for (int j = 0; j < 2; j++) {
- System.out.print(maxMatrix[i][j] + " ");
- }
- System.out.println();
- }
- System.out.println(maxValue);//за да си запазим матриците 2х2 си правим променлива maxMatrix
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement