import
java.io.*;
import
java.util.*;
class
GFG {
static
void
updateMatrix(
int
mat[][])
{
Map<Integer, Integer> right
=
new
HashMap<Integer, Integer>();
Map<Integer, Integer> left
=
new
HashMap<Integer, Integer>();
for
(
int
i =
0
; i <
3
; i++)
{
for
(
int
j =
0
; j <
3
; j++)
{
if
(!right.containsKey(i + j))
right.put(i + j, mat[i][j]);
else
right.put(i + j,
right.get(i + j) + mat[i][j]);
if
(!left.containsKey(i - j))
left.put(i - j, mat[i][j]);
else
left.put(i - j,
left.get(i - j) + mat[i][j]);
}
}
for
(
int
i =
0
; i <
3
; i++)
{
for
(
int
j =
0
; j <
3
; j++)
{
mat[i][j] = Math.max(right.get(i + j),
left.get(i - j));
}
}
for
(
int
i =
0
; i <
3
; i++)
{
for
(
int
j =
0
; j <
3
; j++)
{
System.out.print(mat[i][j] +
" "
);
}
System.out.print(
"\n"
);
}
}
public
static
void
main (String[] args) {
int
[][] mat = {{
5
,
2
,
1
},
{
7
,
2
,
6
},
{
3
,
1
,
9
}};
updateMatrix(mat);
}
}