#2546. 最近邻 M 点

最近邻 M 点

Description

KK维空间中有很多点,给定一个点,找出最近的MM个点。点pp和点qq之间的距离是连接它们的直线段的长度。

如果p=p1p2pnp=(p_1,p_2,…,p_n)q=q1q2qnq=(q_1,q_2,…,q_n)是欧几里德n-空间中的两个点,则从p到q或从q到p的距离由下式给出:

Format

Input

有多个测试用例。第11行包含两个非负整数nnkk,分别表示点数和维数,1n5×1041≤n≤5×10^41k51≤k≤5。下面的nn行,每行都包含kk个整数,表示一个点的坐标。接下来的一行包含一个正整数tt,表示查询数,1t1041≤t≤10^4。再接下来的每个查询都包含两行,在第11行中输入的kk个整数表示给定的点;第22行包含一个整数mm,表示应该找到的最近点的数量,1m101≤m≤10。所有坐标的绝对值都不超过10410^4

Output

对每个查询都输出m+1m+1行:第11行输出“thethe closestclosest mm pointspoints are:are:”,其中mm是点的数量;接下来输出的mm行代表mm个点,从近到远排列。输入的数据保证答案唯一,从给定点到所有最近m+1m+1点的距离都不同。

Samples

3 2
1 1
1 3
3 4
2
2 3
2
2 3
1
the closest 2 points are:
1 3
3 4
the closest 1 points are:
1 3

来源

HDU4347