Given a binary matrix of size **N x M**. The task is to find the distance of nearest 1 in the matrix for each cell. The distance is calculated as **|i _{1} – i_{2}| + |j_{1} – j_{2}|**, where i

**Input:**

The first line of input is an integer T denoting the number of test cases. Then T test cases follow. Each test case consists of 2 lines. The first line of each test case contains two integers M and N denoting the number of rows and columns of matrix. Then in the next line are N*M space separated values of the matrix (mat) .

**Output:**

For each test case in a new line print the required distance matrix in a single line separated by space.

**User Task:**

The task is to complete the function **nearest**() which finds the nearest cell with 1.

**Constraints:**

1 <= T <= 20

1 <= N, M <= 500

**Example:
Input:**

2

2 2

1 0 0 1

1 2

1 1

**Output:**

0 1 1 0

0 0

**Explanation:
Testcase 1:**

1 0

0 1

0 at {0, 1} and 0 at {1, 0} are at 1 distance from 1s at {0, 0} and {1, 1} respectively.

If you have purchased any course from GeeksforGeeks then please ask your doubt on course discussion forum. You will get quick replies from GFG Moderators there.

Vagesh Verma | 166 |

vamsikrishna55 | 162 |

UrGuru | 150 |

abducodes | 145 |

adithya_99 | 119 |

abducodes | 701 |

harshtyagi36 | 326 |

sandipbhaumik | 291 |

Akhil varma | 267 |

arpit_anshuman | 262 |

blackshadows | 5331 |

Ibrahim Nash | 5219 |

akhayrutdinov | 5111 |

mb1973 | 4929 |

Quandray | 4567 |

Login to report an issue on this page.