找礼物(find)

找礼物(find)

题目描述

新 年到了,你的好友和你(共K个人)的周围满是礼物,你让你的好友先拿,但是每个人只能拿当前离自己最近的礼物[当然如果有并列的多个礼物离你的距离相等 (精确到小数点后四位,所有运算均为去尾),这些礼物就都属于这个人]。现在你们所在的位置是原点(0,0),每个礼物的位置用坐标表示。现在告诉你每个 礼物的坐标,还有每个礼物是谁送的。要你找出你的礼物离你多远,你能拿到多少礼物,这些礼物是谁送的。如果你拿不到礼物,请输出“555…”。

输入

第1行:N和K分别表示礼物的个数和人数(K≤N≤100000);
第2到N+1行:每行先是赠送礼品人的姓名,然后是礼物的坐标(x,y)(坐标绝对值小于106)。数据间用空格分开。

输出

第1行:D和U表示礼物距你多远(只要去尾后的整数)和你能拿到多少礼物。
第2到U+1行:每行一个人名,表示送礼的人(按照输入的顺序输出)。

样例输入

5 2
Jason 1 1
Herry 4 4
Patty 3 4
Tom 2 10
Petter 5 10

样例输出

5 1
Patty

提示

long long大法好

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <cmath>
using namespace std;

typedef long long int ll;
struct point {
    string name;
    ll d;
    int num;
};

bool cmp(const point a, const point b) {
    if(a.d == b.d) {
        return a.num < b.num;
    }
    return a.d < b.d;
}

int main() {
    ios::sync_with_stdio(false);
    int n, k;
    cin >> n >> k;
    point s[100002];
    ll x, y;
    for(int i = 0; i < n; i++) {
        cin >> s[i].name>> x >> y;
        s[i].num = i;
        s[i].d = ll(sqrt(x*x + y*y + 0.0)*10000);
    }
    sort(s, s+n, cmp);
    queue<int>que;
    int cnt = 1;
    ll lem  = s[0].d;
    if(k == 1){
        que.push(0);
    }
    for(int i = 1; i < n; i++) {
        if(s[i].d != lem) {
            cnt++;
            lem = s[i].d;
        }
        if(cnt == k) {
            que.push(i);
        }
    }
    if(que.size() > 0) {
        int x = que.front();
        cout<< s[x].d/10000 <<" "<<que.size() << endl;
         while(!que.empty()){
            int x = que.front();
            cout << s[x].name << endl;
            que.pop();
        }
    }else {
       cout<<"555..."<<endl;
    }
    return 0;
}

时间: 2024-08-09 19:52:36

找礼物(find)的相关文章

找礼物(find)(模拟)

找礼物(find) 时间限制: 1 Sec  内存限制: 64 MB提交: 57  解决: 4[提交][状态][讨论版] 题目描述 新 年到了,你的好友和你(共K个人)的周围满是礼物,你让你的好友先拿,但是每个人只能拿当前离自己最近的礼物[当然如果有并列的多个礼物离你的距离相等 (精确到小数点后四位,所有运算均为去尾),这些礼物就都属于这个人].现在你们所在的位置是原点(0,0),每个礼物的位置用坐标表示.现在告诉你每个 礼物的坐标,还有每个礼物是谁送的.要你找出你的礼物离你多远,你能拿到多少礼

一次愚蠢的NOIP模拟赛

找礼物[find.pas/find.c/find.cpp] [问题描述] 新年到了,突然间,就在那美丽的一霎那,你好友和你(K个人)的周围满是礼物,你发扬你帅气的风格,让你的好友先拿,但是每个人只能拿当前离自己最近的礼物[当然如果有并列的多个礼物离你的距离相等(精确到小数后四位,所有运算均为去尾),这些礼物就都属于这个人].现在你们所在的位置是原点(0,0),每个礼物的位置用坐标表示.现在告诉你每个礼物的坐标,还有每个礼物是谁送的.要你找出你的礼物离你多远,你能拿到多少礼物,这些礼物是谁送的.如

Class热替换与卸载

概述 名词解释:所谓热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用.本文主要是分析Tomcat中关于热部署和JSP更新替换的原理,在此之前先介绍class的热替换和class的卸载的原理. Class热替换 ClassLoader中重要方法: loadClass:ClassLoader.loadClass(…) 是ClassLoader的入口点.当一个类没有指明用什么加载器加载的时候,JVM默认采用AppClassLoader加载器加载没有加载过的class,调用的方法的入口就是

PostgreSQL中查找最大连续性字段

一.建表 lihao=#create table tb (id int,pid int,name varchar); lihao=#INSERT INTO tb VALUES (1, 0, '广东省'); lihao=#INSERT INTO tb VALUES (2, 0, '浙江省'); lihao=#INSERT INTO tb VALUES (3, 2, '衢州市'); lihao=#INSERT INTO tb VALUES (4, 2, '杭州市'); lihao=#INSERT I

Java对List对象进行排序

有时候需要对List对象进行排序,如果每一处都去写一个排序方法,就会产生重复代码的坏味道,而且每一处都写,工作量会很大.我们知道,Java提供了一个Collections.sort()方法可以对List排序,利用Java反射机制,很容易就能写出一个通用的排序方法. 为了防止出现不按照getter,setter规范命名的POJO类,我不打算动态调用getXXX()方法,而是直接获取对象的属性值.为了达到不论是否是public成员变量,都能获取到的目的,在获取到Field后,调用了setAccess

心若迅雷会员账号获取器

心若迅雷会员账号获取器是一个绿色免费的迅雷会员获取小工具,每天都会发布多个有效的迅雷会员账号供大家使用,用户可以使用这些账号登陆迅雷进行离线下载. 获取迅雷白金会员一人一号说明以及流程:点击下面的(立即获取白金会员一人一号)进行获取,会自动打开一个软件安装提示,点击(立即点击安装)然后点软件上的注册账号然后通过注册的账号登陆视频聊天软件,然后随便进个房间免费观看2分钟视频,2分钟以后软件自动发送一人一号白金账号到你邮箱!如果按操作后没发送到自己邮箱请联系客服QQ:1625223157领取一人一号

铁板烧,过年最爱的红包,去那里找?板烧滋味铁板烧有享不尽的礼物!

铁板烧,过年最爱的红包,去那里找?板烧滋味铁板烧有享不尽的礼物!过年了我最爱最爱的红包你在哪里啊?铁板烧的食材有哪些,我想带你去板烧滋味去吃我们最美味的铁板烧.铁板烧,那里的食材老么丰盛,老么有特色啦啦啦--. 板烧滋味铁板烧就等你的红包你的红包-..红包红包你听到了吗?板烧滋味铁板烧加盟在等你哦!板烧滋味铁板烧加盟是一家具有专业餐饮策划.品牌经营.连锁加盟以及物流配送为一体的大型餐饮品牌管理餐厅.家庭铁板烧的做法,板烧滋味铁板烧加盟会对加盟者的食材有专业运输,加盟者投资方也不用担心策划,板烧滋

铁板烧加盟,过年最爱的红包,去那里找?板烧滋味铁板烧有享不尽的礼物!

铁板烧加盟,过年最爱的红包,去那里找?板烧滋味铁板烧有享不尽的礼物!过年了我最爱最爱的红包你在哪里啊?路边铁板烧,我想带你去板烧滋味去吃我们最美味的铁板烧.铁板烧加盟,那里的食材老么丰盛,老么有特色啦啦啦--. 板烧滋味铁板烧就等你的红包你的红包-..红包红包你听到了吗?板烧滋味铁板烧加盟在等你哦!板烧滋味铁板烧加盟是一家具有专业餐饮策划.品牌经营.连锁加盟以及物流配送为一体的大型餐饮品牌管理餐厅.铁板烧设备铭牌,板烧滋味铁板烧加盟会对加盟者的食材有专业运输,加盟者投资方也不用担心策划,板烧滋味

我侄子今年小学五年级 刚才找我 如图所示 开始我还说 小小年纪可以培养下

一看到简介瞬间斯巴达了开始了,八强.月神不知道能不能重回世界巅峰.好激动.辅助开了团,为什么要无状态背锅呢?拿了大龙的和打野输出爆炸? 就算死了 酷 ,那为什么打不呢这比赛看的真是惊心动魄,为了攒人品忍到了现在 简单简单简单://../ 正在直播哈尔滨市龙江旅游中等职业技术学校,我校是集学历教育与职业教育为一体的国家正规专业型统招学校(?= 兮夜真的变强了.好让人放心如果让所以玩家投票将一个英雄踢出召唤师峡谷的话.亚索的得票率应该会高于%吧谁告诉我一下看图不说话. 我是不是以后可以大声说话了新队