sum[0][0] = matrix[0][0]
for first row
sum[0][j] = sum[0][j-1] + matrix[0][j]
for first column
sum[i][0] = sum[i-1][0] + matrix[i][0]
for all other rows and columns
sum[i][j] = matrix[i][j] + sum[i-1][j] + sum[i][j-1] – sum[i-1][j-1]
// a is input array .. filled with sample inputs
int a[][] = {
{1,1,1,1,1},
{2,2,2,2,2},
{3,3,3,3,3},
{4,4,4,4,4},
{5,5,5,5,5}
};
int sum[][] = new int[a.length][a[0].length];
sum[0][0] = a[0][0];
for(int i=1;i<a.length;i++){
sum[i][0] = sum[i-1][0] + a[i][0];
}
for(int j=1;j<a[0].length;j++){
sum[0][j] = sum[0][j-1] + a[0][j];
}
for(int i=1; i<a.length;i++) {
for(int j=1; j<a[0].length;j++) {
sum[i][j] = a[i][j]
+ sum[i][j-1]
+ sum[i-1][j]
- sum[i-1][j-1];
}
}
Thanks
]]>