A83319.超级拼装

普及-

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

小明正在使用积木块拼机器人模型,然而现在他手头已经没有积木块了,因此他决定去自己的积木仓库补点配件。

小明把他的积木仓库是一个 n×nn \times n 的网格, 他计划从中抓一把。小明可以选择一个点 (x,y)(x, y) 并且获得和该点的曼哈顿距离在 DD 以内的所有零件。

当前的机器人模型需要的零件一共有 mm 种, 编号从 11mm ,各需要一个。编号为 00 的零件是万能零件,可以替代任何一种零件。

现在小明希望抓一把零件之后可以拼出最多的机器人。

请你统计并输出所有选择后可以拼出最多机器人的点坐标。

输入格式

第一行输入三个整数 n,m,Dn, m,D, 分别代表积木仓库的大小, 需要的零件种类数,以及小明抓一把可以获取零件的范围。

(1n,D50,1m10)( 1 \le n, D \le 50, 1 \le m \le 10)

接下来 nn 行,每行 nn 个数字,代表小明积木仓库每个位置存放的积木块种类 (0aij109)(0 \le a_{ij} \le 10^9)

输出格式

第一行输出一个整数 cntcnt 代表可以拼出最多的机器人的点有几个。
接下来 cntcnt 行,每行输出两个数字 xi,yix_i, y_i 代表第 ii 个可以选择的点坐标。

输入输出样例

  • 输入#1

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

    输出#1

    3
    2 1
    2 2
    3 2

说明/提示

曼哈顿距离即为两点横坐标距离的差值 + 纵坐标距离的差值。

即: aa 点到 bb 点的曼哈段距离 d(a,b)=(xaxb)+(yayb)d(a,b) = \lvert(x_a - x_b)\rvert + \lvert(y_a-y_b)\rvert

首页