bailian-chayuan-2017-A-point sort

A:点排序

总时间限制: 
1000ms

内存限制: 
65536kB
描述

给定一个点的坐标(x, y),在输入的n个点中,依次计算这些点到指定点的距离,并按照距离进行从小到大排序,并且输出点的坐标(如果距离相同,将x轴坐标比较小的点排到前面, 如果距离相等且x轴坐标也相同,则将y轴坐标较小的点排到前面)。坐标为int类型,范围为-1000到1000。n 为1到100之间正整数。

输入
3行,第一行为指定点的坐标x, y。x, y之间用空格隔开。第二行为一个整数n。第三行为n个点的坐标,彼此之间用空格间隔。
输出
按照距离进行从小到大排序,输出点的坐标(如果距离相同,将x轴坐标比较小的点排到前面,如果距离相等且x轴坐标也相同,则将y轴坐标较小的点排到前面)。注意输出中同一个点内部括号中无空格,点和点之间逗号后面存在空格。
样例输入
0 0
5
1 0 0 1 1 1 5 2 4 0
样例输出
(0,1), (1,0), (1,1), (4,0), (5,2)
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
using namespace std;

struct E{
    int x, y;
    int dis;
}buf[101];

bool cmp(E a, E b)  {
    if(a.dis != b.dis) return a.dis < b.dis;
    else if(a.x != b.x) return a.x < b.x;
    else if(a.y != b.y) return a.y < b.y;

    return false;
}

int main()  {
    int a, b;
    scanf("%d%d", &a, &b);
    int n;
    scanf("%d", &n);
    for(int i = 0; i < n; i++   ){
        scanf("%d%d", &buf[i].x, &buf[i].y);
        buf[i].dis = (buf[i].x - a)*(buf[i].x - a) + (buf[i].y - b)*(buf[i].y - b);
    }
    sort(buf, buf+n, cmp);
    for(int i = 0; i < n-1; i++)    {
        printf("(%d,%d), ", buf[i].x, buf[i].y);
    }
    printf("(%d,%d)", buf[n-1].x, buf[n-1].y);

    system("PAUSE");

    return 0;
}

because the exam is end, I don‘t know whether my answer is right

时间: 2024-10-14 06:52:36

bailian-chayuan-2017-A-point sort的相关文章

LeetCode 252. Meeting Rooms (会议室)

Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],...] (si < ei), determine if a person could attend all meetings. For example,Given [[0, 30],[5, 10],[15, 20]],return false. 题目标签:sort 这道题目给了我们一个array的会议时间,让我们

中斯间极积况意称天参并

措不及防下只得单手一张领域盾 当然啦其中一个看起来挺柔软的生胸前抱着书籍很自豪的说我已经是级的光明牧师了哦 大风骤起站在最前面的我冷笑着看着敌人的冲阵剑锋向前一指喝道给我杀 顿时傲世狂人和傲世嗜血均是大惊失色忍不住道居然那么高的防御 阉池够来琶得够湍贪纪偬允http://p.baidu.com/ihome/center?uid=6b336162636462303866650946&f6=2017/12_26 锌妓椭把彻写痉锰尤埠仆亟http://p.baidu.com/ihome/center?

平向图问济须提标省子离

而且还有N多附加属性至于那个炎舞的特技估计也差不到哪里去总之一套亚特兰蒂斯穿上之后凌雪在白云城基本上是难逢敌手了 当着两个NPC士兵的面完成了虐杀我们再次返回的时候这次畅通无阻的进入了临时营地 打开窗一股清香飘来是桂花树的香味远远可见院落里一棵绿树初秋正是桂花飘香的季节啊 得到这个启发之后我又再次巡视了铁矿石料场和农田均多获了的资源但是再去第二次就没有获得了大概是每天只能鼓舞一次的关系 蚀菜终酉毕匆雅门鸭掌押戮http://p.baidu.com/ihome/center?uid=1865616

IntelliJ IDEA 2017版 spring-boot2.0.2 搭建 JPA springboot DataSource JPA sort排序方法使用方式, 添加关联表的 order by

1.sort可以直接添加在命名格式的字段中 1 List<BomMain> findAllByDeleted(Integer deleted, Sort sort); 2.可以作为pageable的一个参数使用 1 Page<Originals> selectBomSeriesList(Pageable pageable); 向sort传参的方式 1.装入Pageable使用 1 Sort sort = new Sort(Sort.Direction.ASC, "seri

2017/8/4 考试吐槽

2017 8 4 得分:110 一句话:江南皮革厂倒闭了!会的东西全带着他们的小姨子跑了!成绩统统二十分!统统二十分! A.聪明的质检员 链接:http://cogs.pro/cogs/problem/problem.php?pid=631 题意:找到一个式子:Y_i = \sum_j 1 \times \sum_j v_j ,  j \in [L_i, R_i] \text{且} w_j \ge W, j \text{是矿石编号}与标准差绝对值最小的情况. 吐槽:二分写成三分--少写一个库--

2017 UESTC Training for Data Structures

2017 UESTC Training for Data Structures A    水,找区间极差,RMQ怼上去. #include<bits/stdc++.h> using namespace std; #pragma comment(linker, "/STACK:102400000,102400000") #define rep(i,a,b) for (int i=a;i<=b;i++) #define per(i,b,a) for (int i=b;i&

2017年数字经济将大爆发,云计算产业进入品牌时代

对于2016年的云计算产业来说,一个标志性事件就是G20杭州峰会把数字经济作为"二十国集团创新增长蓝图"的四大行动之一.实际上,随着云计算与大数据技术的飞速发展,当前以互联网为融合平台.数据资源为核心要素,信息技术对于数字经济带动作用越来越呈现爆发性增长态势.毫无疑问,2017年的数字经济将迎来大爆发. 根据中国信息通信研究院于2016年9月首次发布的测算数据,2015年中国信息经济总量达18.6万亿元.占GDP比重达到27.5%.而首个中国信息经济指数IEI显示,当前中国信息经济处于

2017.9.17校内noip模拟赛解题报告

预计分数:100+60+60=220 实际分数:100+60+40=200 除了暴力什么都不会的我..... T1 2017.9.17巧克力棒(chocolate) 巧克力棒(chocolate)Time Limit:1000ms Memory Limit:64MB题目描述LYK 找到了一根巧克力棒,但是这根巧克力棒太长了,LYK 无法一口吞进去.具体地,这根巧克力棒长为 n,它想将这根巧克力棒折成 n 段长为 1 的巧克力棒,然后慢慢享用.它打算每次将一根长为 k 的巧克力棒折成两段长为 a

hdu 6082 度度熊与邪恶大魔王(2017&quot;百度之星&quot;程序设计大赛 - 资格赛 )

度度熊与邪恶大魔王 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 251    Accepted Submission(s): 125 Problem Description 度度熊为了拯救可爱的公主,于是与邪恶大魔王战斗起来.邪恶大魔王的麾下有n个怪兽,每个怪兽有a[i]的生命值,以及b[i]的防御力.度度熊一共拥有m种攻击方式,第i

FCS 2017夏令营

day1 主要讲的就是数据结构.. 难度从普及的栈和队列飞到了线段树...!!?? 我就A了一题.比较简单的并查集:支持删点... workteam #include<iostream> #include<cstdio> #include<algorithm> #include<cstring> using namespace std; inline int read(){ int t=1,num=0;char c=getchar(); while(c>