#P993. 明明找礼物
明明找礼物
问题描述
新年到了,突然间,就在那美丽的一霎那,明明和好友(K个人)的周围满是礼物,明明发扬帅气的风格,让好友先拿,但是每个人只能拿当前离自己最近的礼物[当然如果有并列的多个礼物离明明的距离相等(精确到小数后四位,所有运算均为去尾),这些礼物就都属于这个人]。现在明明所在的位置是原点(0,0),每个礼物的位置用坐标表示。现在告诉明明每个礼物的坐标,还有每个礼物是谁送的。要找出明明的礼物离明明多远,明明能拿到多少礼物,这些礼物是谁送的。如果明明拿不到礼物,请输出“555…”
【输入】
第一行:N 和 K 分别表示礼物的个数和人数。
第二到N+1行:每行先是赠送礼品人的姓名,然后是礼物的坐标(x,y)。
数据间空格分隔
【输出】
第一行: D 和 U 表示礼物距明明多远(只要去尾后的整数)和明明能拿到多少礼物。
第二到U+1行:每行一个人名,表示送礼的人。<按照输入的顺序输出>
【样例】
5 2
Jason 1 1
Herry 4 4
Patty 3 4
Tom 2 10
Petter 5 10
5 1
Patty
6 2
Jim 1 –1
Flord 3 –3
Joseph –1 1
Steve 3 3
Tiger 2 –10
User 10 20
4 2
Flord
Steve
样例2说明:jim 和 joseph 的礼品是等距的距离最短,被第一个人拿走,剩下的四个人中flord和steve的礼物也是等距的计算得到距离为4。
【数据范围】
对于30%的数据 K≤N≤1000
对于所有的数据 K≤N≤100000
所有的坐标绝对值小于10^6