TouchStone
  Please Login
ログイン 登録
 ホームページ  問題セット  試験一覧  提出状況  掲示板  統計情報
  • ホーム
  • 問題セット
  • P1711
  • 問題
  • P1711【语法基础】最近距离
    制限 : 時間制限 : 10000 MS   メモリ制限 : 65536 KB
    問題説明

    给定一个n*m的矩阵a,矩阵中每个元素不是0就是1,且1比0少。
    矩阵中两个元素a[x1][y1]和a[x2][y2]的距离d定义为:d = ︱x1 - x2︱+︱y1 - y2︱ (||表示求绝对值,)
      对于矩阵中的每一个元素,计算与它最近的值为1的元素的距离。

    入力形式

    第一行包括两个整数n,m(m和n在1-100之间)用空格隔开
    接下来的n行中为每行的m个元素赋值为0或1

    出力形式

    n行,每行有m个用空格隔开的整数。第i行,第j列的整数表示a[i][j]与离它最近的值为1的元素的距离

    サンプル入力

    3 4
    0 0 0 1
    0 0 1 1
    0 1 1 0

    サンプル出力

    3 2 1 0
    2 1 0 0
    1 0 0 1

    ヒント

    注:c++求绝对值的函数是abs() 比如int x=abs(-6); 那么x的值为6
    需要#include<cstdlib> 当然也可以自己写一个求绝对值的函数


    ソース  感谢pugan