CF1486B Eastern Exhibition
CF1486B Eastern Exhibition
题意:
二维平面上有 n 个点,要找一个点,使得所有点到它的曼哈顿距离( x 和 y 的坐标差距之和)之和最小。请问有几个满足该要求的点?
题解:
我们先考虑一维的情况,在一个数轴上,存在n个点,现在要找一个为位置pos,使得pos到其他点的距离和最小?
很显然,如果n为奇数,我们就选最中间的点为pos,如果n为偶数,那就是最中间两个数的中位数
现在问题变成二维的了,现在要找点(x,y)到其他点的距离和最小,x和y我们是可以分开考虑的,因为x只与横坐标有关,y只与纵坐标有关,那问题就变成两个一维的情况,然后两个所围成的面积,里面的点都是满足要求的
代码:
#include <bits/stdc++.h>
#include <unordered_map>
#define debug(a, b) printf("%s = %d\n", a, b);
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> PII;
clock_t startTime, endTime;
//Fe~Jozky
const ll INF_ll= 1e18;
const int INF_int= 0x3f3f3f3f;
void read(){};
template <typename _Tp, typename... _Tps> void read(_Tp& x, _Tps&... Ar)
{x= 0;char c= getchar();bool flag= 0;while (c < '0' || c > '9')flag|= (c == '-'), c= getchar();while (c >= '0' && c <= '9')x= (x << 3) + (x << 1) + (c ^ 48), c= getchar();if (flag)x= -x;read(Ar...);
}
template <typename T> inline void write(T x)
{if (x < 0) {x= ~(x - 1);putchar('-');}if (x > 9)write(x / 10);putchar(x % 10 + '0');
}
void rd_test()
{#ifdef ONLINE_JUDGE
#elsestartTime = clock ();freopen("data.in", "r", stdin);
#endif
}
void Time_test()
{#ifdef ONLINE_JUDGE
#elseendTime= clock();printf("\nRun Time:%lfs\n", (double)(endTime - startTime) / CLOCKS_PER_SEC);
#endif
}
const int maxn=1e3+9;
ll x[maxn],y[maxn];
int main()
{//rd_test();int t;read(t);while(t--){int n;cin>>n;for(int i=1;i<=n;i++){cin>>x[i]>>y[i];}if(n&1==1){printf("1\n");continue;}sort(x+1,x+1+n);sort(y+1,y+1+n);ll ans1=x[n/2+1]-x[n/2]+1;ll ans2=y[n/2+1]-y[n/2]+1;cout<<ans1*ans2<<endl;}return 0; //Time_test();
}
CF1486B Eastern Exhibition相关推荐
- CodeForces - 1486B Eastern Exhibition(二维中位数)
题目链接:点击查看 题目大意:给出二维平面上的 nnn 个点,现在需要选择任意一个点满足到所有点的距离最小,问这样的点有几个 题目分析:如果压成一维的话,那就是一个裸的中位数问题了,只是升到了二维而已 ...
- Codeforces Round #703 (Div. 2) B.Eastern Exhibition 中位数结论
link 题意: 给n个点,求有多少个点到所有点距离之和最小. 中位数结论题了,可以考虑一维的情况,让后二维的话乘起来就好啦. //#pragma GCC optimize(2) #include&l ...
- Codeforces Round #703 (Div. 2)(A ~ F)超高质量题解【每日亿题2 / 19】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A. Shifting Stacks B - Eastern Exhibition C1 - G ...
- Codeforces Round #703 (Div. 2)
Codeforces Round #703 (Div. 2) 题号 题目 知识点 A Shifting Stacks 思维 B Eastern Exhibition 思维 C1 Guessing th ...
- Codeforces Round #703 (Div. 2) 题解
文章目录 A. Shifting Stacks B. Eastern Exhibition C. Guessing the Greatest D. Max Median E. Paired Payme ...
- Codeforces Round #703 (Div. 2) A-E 题解
Shifting Stacks 给你 n 长度的数组,每个下标包含 000-nnn 个木块 其中可以将某一位置的木块向右边平移 请问是否能凑出高度严格上升的数组 一开始想简单了 直接判断木块的和是否大 ...
- 【英语学习】【Daily English】U14 Transportation L01There will be a car exhibition next month
文章目录 Word Preparation upcoming event:近期活动:即将发生的事件 display:v. 展示,陈列 exhibition:展览会,展出 There will be . ...
- Sonya and Exhibition 【模拟】
题目链接:https://cn.vjudge.net/contest/280309#problem/J 题目描述 Sonya decided to organize an exhibition of ...
- CodeForces - 1004B - Sonya and Exhibition(纯思维题)
题目链接: http://codeforces.com/problemset/problem/1004/B 题目: Sonya decided to organize an exhibition of ...
最新文章
- DB天气app冲刺二阶段第十一天(完结)
- 【里程碑式证明】同时解决了量子物理学和理论数学的难题!
- (转载)以太网最大帧和最小帧、MTU .
- Cilium 首次集成国内云服务,阿里云 ENI 被纳入新版本特性
- 30万奖金等你拿 | “信也科技杯”第五届数据解决方案应用大赛火热报名中!...
- VMware+Win7+windbg 双机调试
- HLS中数据的合并与拆分
- Sphinx全文检索引擎测试
- HTTP 协议 -- 浏览器缓存机制
- ntp linux 使用,linux-ntp 使用
- JAVA 进制转换的几个方法
- 利用向量求点到线的最短距离
- 解决百度云离线文件因含有违规内容被系统屏蔽无法下载问题
- 【独行秀才】macOS Big Sur 11.6.5正式版(20G517)原版镜像
- Andriod 获取手机CPU型号设备信息
- 【游戏客户端】如何实现环形进度条
- 1+X 5G移动网络运维 - 第一篇
- 视频剪辑技巧,教你视频画面用图片进行遮挡的方法
- java基本类型和使用
- WIKI--维基百科
热门文章
- 震惊世界的亚洲8大奇迹,你都知道几个?
- 如何快速解剖数据背后隐藏的信息
- c语言出勤成绩,C语言课程设计学生考勤系统文档推荐 (10页)-原创力文档
- mysql tdh_socket_thread_num_TDH_Socket的一些性能对比数据
- 超详细图解!【MySQL进阶篇】MySQL索引原理
- oracle crontab e,Linux运维知识之通过crontab -e编辑生成的定时任务,写在哪个文件中...
- centos 6 x64 mysql_CentOS 6.x版本升级Mysql
- android手机拍摄权限,react-native 手机拍照权限
- vector容器中查找某一元素是否存在(牛逼的vector!!!!!!)
- 模板编译template的背后,究竟发生了什么事?带你了解template的纸短情长