题目描述
今天是小数心上大学第一次参加程序设计比赛,这场比赛无比宏大,所以小数心的很多同学找不到去哪个赛场。小数心作为大学生活的高手,他有一个雷达可以将所有参赛选手的坐标放到二维平面上,并且获得坐标。
比赛共有 N 名学生参加,有 M 个赛场。第 i 名学生的坐标为 (ai,bi),编号为 j 的赛场的坐标为 (cj,dj)。热情的小数心可以帮助每位同学前往曼哈顿距离最近的检查点。两点 (x1,y1) 和 (x2,y2) 之间的曼哈顿距离为 ∣x1−x2∣+∣y1−y2∣。这里的 ∣x∣ 表示 x 的绝对值。
如果对于一名同学有多个最近的赛场,他/她将会选择编号最小的赛场。
输入格式
第一行两个整数,N 和 M(1≤N,M≤50),代表同学和赛场的数量。
接下来 N 行,每行两个整数 ai,bi 代表第 i 名同学目前在雷达上的坐标。
最后 M 行,每行两个整数 ci,di 代表第 i 个赛场在雷达上的坐标。保证(−108≤ai,bi,ci,di≤108)
所有输入数值均为整数。
输出格式
输出 N 行数据,每行一个整数。第 i 行代表第 i 名同学应该前往的最近赛场的编号。
输入样例1
2 2
2 0
0 0
-1 0
1 0
输出样例1
2
1
输入样例2
3 4
10 10
-10 -10
3 3
1 2
2 3
3 5
3 5
输出样例2
3
1
2
提示
第一名学生与每个检查点之间的曼哈顿距离为:
- 对于赛场1: ∣2−(−1)∣+∣0−0∣=3∣2−(−1)∣+∣0−0∣=3
- 对于赛场2: ∣2−1∣+∣0−0∣=1∣2−1∣+∣0−0∣=1
最近的赛场2。因此,输出的第一行应输出 2。
第二名学生与每个检查点之间的曼哈顿距离为:
- 对于赛场1: ∣0−(−1)∣+∣0−0∣=1∣0−(−1)∣+∣0−0∣=1
- 对于赛场2: ∣0−1∣+∣0−0∣=1∣0−1∣+∣0−0∣=1
当有多个最近的赛场时,学生将前往编号最小的赛场。因此,输出的第二行应输出 1。