2100: 吃糖果
内存限制:256 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:4
解决:4
题目描述
众所周知,yk喜欢吃糖果。
众所周知,yk不喜欢动。
但是为了吃到糖果,肯定要走到有糖果的地方。可是yk又要吃,又不想动,这怎么办哪?yk犯了愁,所以找到你来拯救忧郁了很多天的yk。
现在有一个N*M的方格地图,有的方格中放有糖果,每个方格中的糖果数要么为0,要么为1(少的可怜啊,yk泪奔~~,不过至少会有一个方格有糖果,所以yk还是充满希望滴~~)。现在yk可能在其中的任意一格,他想拿到离他最近的糖果,yk只会横着走或者竖着走,每次只能走一步。现在要你输出任意一个位置,yk至少要走多少步才能拿到糖果。
输入
第一行,两个用空格隔开的正整数N,M
下面N行,第i+1(i=1..N)行包含M个数,每个数为0或1(数与数之间没有空格),表示该方格的糖果数。
下面N行,第i+1(i=1..N)行包含M个数,每个数为0或1(数与数之间没有空格),表示该方格的糖果数。
输出
输出N行,每行M个用空格隔开的数(最后一个数后面没有空格),对于第i行第j列的数x,表示从(i,j)走到离它最近的有糖果的地方最少要走x步。
样例输入 复制
3 4
0001
0011
0110
样例输出 复制
3 2 1 0
2 1 0 0
1 0 0 1
提示
【数据范围】
20% N,M<=4
40% N,M<=40
100% N,M<=4000
20% N,M<=4
40% N,M<=40
100% N,M<=4000