Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.*;
- public class Solution {
- static int[][] prefixSum(int[][] matrix) {
- int[][] ans = new int[matrix.length][matrix[0].length];
- ans[0][0] = matrix[0][0];
- for(int i = 1; i < matrix[0].length; i++) {
- // ans[0][i] = matrix[0][i] - matrix[0][i-1];
- ans[0][i] = matrix[0][i] + ans[0][i-1];
- }
- for(int i = 1; i < matrix.length; i++) {
- // ans[i][0] = matrix[i][0] - matrix[i-1][0];
- ans[i][0] = matrix[i][0] + ans[i-1][0];
- }
- for(int i = 1; i < matrix.length; i++) {
- for(int j = 1; j < matrix[0].length; j++) {
- ans[i][j] = matrix[i][j] + ans[i][j-1] + ans[i-1][j] - ans[i-1][j-1];
- // ans[i][j] = matrix[i][j] - (matrix[i][j-1] + matrix[i-1][j] - matrix[i-1][j-1]);
- }
- }
- return ans;
- }
- public static void main(String[] args) {
- Scanner sc = new Scanner(System.in);
- int m = sc.nextInt();
- int n = sc.nextInt();
- int[][] matrix = new int[m][n];
- for(int i = 0; i < m; i++) {
- for(int j = 0; j < n; j++) {
- matrix[i][j] = sc.nextInt();
- }
- }
- for(int[] mat: matrix)
- System.out.println(Arrays.toString(mat));
- int[][] prefixSum = prefixSum(matrix);
- for(int[] p: prefixSum)
- System.out.println(Arrays.toString(p));
- sc.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment