## Boolean Matrix Problem in java

You are given a matrix Mat of m rows and n columns. The matrix is boolean so the elements of the matrix can only be either 0 or 1. Now, if any row of the matrix contains a 1, then you need to fill that whole row with 1. After doing the mentioned operation, you need to print the modified matrix.

#### Input

The first line of contains m and n denoting number of rows and number of columns. Then next m lines contain n elements denoting the elements of the matrix.

#### Constraints:

• 1 <= m, n <= 700
• Mat[I][j] ∈ {0,1}

#### Output

In a new line, print the modified matrix.

### Example

```5 4
1 0 0 0
0 0 0 0
0 1 0 0
0 0 0 0
0 0 0 1
```

#### Output:

```1 1 1 1
0 0 0 0
1 1 1 1
0 0 0 0
1 1 1 1
```

#### Explanation:

rows = 5 and columns = 4

The given matrix is

```1 0 0 0
0 0 0 0
0 1 0 0
0 0 0 0
0 0 0 1
```

Evidently, the first row contains a 1 so fill the whole row with 1. The third row also contains a 1 so that row will be filled too. Finally, the last row contains a 1 and therefore it needs to be filled with 1 too. The final matrix is

```1 1 1 1
0 0 0 0
1 1 1 1
0 0 0 0
1 1 1 1```

## Solution of Boolean Matrix Problem in java :–

```import java.util.*;
import java.lang.*;
import java.io.*;

public class Main
{
public static void main (String[] args) throws java.lang.Exception
{
Scanner sc = new Scanner(System.in);
int m = sc.nextInt();
int n = sc.nextInt();
int arr[][] = new int[m][n];

for(int i=0;i<arr.length;i++)
{
for(int j=0;j<arr[i].length;j++)
{
arr[i][j]=sc.nextInt();
}
}

for(int i=0;i<arr.length;i++)
{
for(int j=0;j<arr[i].length;j++)
{
if(arr[i][j]==1)
{

for(int k=0;k<arr[i].length;k++)
{
arr[i][k]=1;
}
break;
}

}
}

for(int i=0;i<arr.length;i++)
{
for(int j=0;j<arr[i].length;j++)
{
System.out.print(arr[i][j]+" ");
}
System.out.println();
}

}
}```