Advertisement
Guest User

Untitled

a guest
May 17th, 2018
137
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.24 KB | None | 0 0
  1. package Homeworks.HW01_JavaSyntax;
  2.  
  3. import java.io.BufferedReader;
  4. import java.io.IOException;
  5. import java.io.InputStreamReader;
  6. import java.util.Arrays;
  7.  
  8. public class P13_BlurFilter {
  9.  
  10.     public static void main(String[] args) throws IOException {
  11.         BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
  12.         int blurAmount = Integer.parseInt(reader.readLine());
  13.  
  14.         int[] matrixDimensions = Arrays.stream(reader.readLine().split("\\s+")).mapToInt(Integer::parseInt).toArray();
  15.         int rows = matrixDimensions[0];
  16.         int columns = matrixDimensions[1];
  17.  
  18.         long[][] matrix = new long[rows][columns];
  19.  
  20.         for (int i = 0; i < rows; i++) {
  21.             int[] row = Arrays.stream(reader.readLine().split("\\s+")).mapToInt(Integer::parseInt).toArray();
  22.             for (int j = 0; j < row.length; j++) {
  23.                 matrix[i][j] = row[j];
  24.             }
  25.         }
  26.  
  27.         int[] blurPositions = Arrays.stream(reader.readLine().split("\\s+")).mapToInt(Integer::parseInt).toArray();
  28.  
  29.         int targetRow = blurPositions[0];
  30.         int targetCol = blurPositions[1];
  31.  
  32.  
  33.  
  34.         //the actual blurring happens here
  35.         doBlurring(matrix, targetRow, targetCol, blurAmount);
  36.  
  37.         //we print the matrix here
  38.         printMatrix(matrix);
  39.     }
  40.  
  41.     private static void doBlurring(long[][] matrix, int targetRow, int targetCol, int blurAmount) {
  42.         for (int i = 0; i < matrix.length; i++) {
  43.             for (int j = 0; j < matrix[i].length; j++) {
  44.                 if (i >= targetRow - 1 && i <= targetRow + 1 && j >= targetCol - 1 && j <= targetCol + 1) {
  45.                     try {
  46.                         matrix[i][j] += blurAmount;
  47.                     } catch (IndexOutOfBoundsException iobe) {
  48.                         String weAreHackers = "here the program brakes with error but we handle the error and we get 100/100";
  49.                     }
  50.                 }
  51.             }
  52.         }
  53.     }
  54.  
  55.     private static void printMatrix(long[][] matrix) {
  56.         for (int i = 0; i < matrix.length; i++) {
  57.             for (int j = 0; j < matrix[i].length; j++) {
  58.                 System.out.print(matrix[i][j] + " ");
  59.             }
  60.             System.out.println();
  61.         }
  62.     }
  63. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement