博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[CC-CLPOINT]Optimal Point
阅读量:5906 次
发布时间:2019-06-19

本文共 836 字,大约阅读时间需要 2 分钟。

[CC-CLPOINT]Optimal Point

题目大意:

\(k(k\le5)\)维空间中,如果点\(X\)的坐标为\((x_1,x_2,\ldots,x_k)\),点\(Y\)的坐标为\((y_1,y_2,\ldots,y_k)\),定义\(X\)\(Y\)之间的曼哈顿距离为\(D(X,Y)=|x_1−y_1|+|x_2−y_2|+\cdots|x_k−y_k|\)

现在在\(k\)维空间中给出\(n(n\le10^5)\)个坐标均为整数的点,求出一个坐标均为整数的点,使得这个点与这\(n\)个点的曼哈顿距离和最小。如果有多个点满足条件,则输出字典序最小的那一个。

思路:

对每一维排序,输出中位数(如有两个输出较小的一个)即可。

源代码:

#include
#include
#include
inline int getint() { register char ch; register bool neg=false; while(!isdigit(ch=getchar())) neg|=ch=='-'; register int x=ch^'0'; while(isdigit(ch=getchar())) x=(((x<<2)+x)<<1)+(ch^'0'); return neg?-x:x;}const int N=1e5,K=5;int p[K][N];int main() { for(register int T=getint();T;T--) { const int n=getint(),k=getint(); for(register int i=0;i

转载于:https://www.cnblogs.com/skylee03/p/9876292.html

你可能感兴趣的文章
Spark调研笔记第6篇 - Spark编程实战FAQ
查看>>
IE6下position:fixed不支持问题及其解决方式
查看>>
iOS Animation具体解释
查看>>
Selenium:集成测试报告
查看>>
<html>
查看>>
关于虚析构函数的作用和使用
查看>>
[Angular] Custom directive Form validator
查看>>
密码子优化--转载
查看>>
英特尔 QSV 在 FFMPEG 中的使用(Windows)
查看>>
深入理解计算机系统(2.2)------进制间的转换原理
查看>>
Linux下 网卡测速
查看>>
改善C#程序的建议5:引用类型赋值为null与加速垃圾回收
查看>>
App.js和App.css(用于移动应用的js和css)
查看>>
python DataFrame获取行数、列数、索引及第几行第几列的值
查看>>
【简单易懂】JPA概念解析:CascadeType(各种级联操作)详解
查看>>
iostat各字段的来源和真实含义
查看>>
在 word 中对正文和目录进行分节显示页码
查看>>
关于面试总结4-python笔试题
查看>>
TCC-Win32中文文档[翻译]
查看>>
Silverlight Client←→Server数据同步备忘代码
查看>>