A83319.超级拼装
普及-
官方
通过率:0%
时间限制:1.00s
内存限制:128MB
题目描述
小明正在使用积木块拼机器人模型,然而现在他手头已经没有积木块了,因此他决定去自己的积木仓库补点配件。
小明把他的积木仓库是一个 n×n 的网格, 他计划从中抓一把。小明可以选择一个点 (x,y) 并且获得和该点的曼哈顿距离在 D 以内的所有零件。
当前的机器人模型需要的零件一共有 m 种, 编号从 1 到 m ,各需要一个。编号为 0 的零件是万能零件,可以替代任何一种零件。
现在小明希望抓一把零件之后可以拼出最多的机器人。
请你统计并输出所有选择后可以拼出最多机器人的点坐标。
输入格式
第一行输入三个整数 n,m,D, 分别代表积木仓库的大小, 需要的零件种类数,以及小明抓一把可以获取零件的范围。
(1≤n,D≤50,1≤m≤10)
接下来 n 行,每行 n 个数字,代表小明积木仓库每个位置存放的积木块种类 (0≤aij≤109)。
输出格式
第一行输出一个整数 cnt 代表可以拼出最多的机器人的点有几个。
接下来 cnt 行,每行输出两个数字 xi,yi 代表第 i 个可以选择的点坐标。
输入输出样例
输入#1
3 2 1 0 1 4 2 0 1 2 1 0
输出#1
3 2 1 2 2 3 2
说明/提示
曼哈顿距离即为两点横坐标距离的差值 + 纵坐标距离的差值。
即: a 点到 b 点的曼哈段距离 d(a,b)=∣(xa−xb)∣+∣(ya−yb)∣。