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相关推荐

  1. CodeForces - 1486B Eastern Exhibition(二维中位数)

    题目链接:点击查看 题目大意:给出二维平面上的 nnn 个点,现在需要选择任意一个点满足到所有点的距离最小,问这样的点有几个 题目分析:如果压成一维的话,那就是一个裸的中位数问题了,只是升到了二维而已 ...

  2. Codeforces Round #703 (Div. 2) B.Eastern Exhibition 中位数结论

    link 题意: 给n个点,求有多少个点到所有点距离之和最小. 中位数结论题了,可以考虑一维的情况,让后二维的话乘起来就好啦. //#pragma GCC optimize(2) #include&l ...

  3. Codeforces Round #703 (Div. 2)(A ~ F)超高质量题解【每日亿题2 / 19】

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A. Shifting Stacks B - Eastern Exhibition C1 - G ...

  4. Codeforces Round #703 (Div. 2)

    Codeforces Round #703 (Div. 2) 题号 题目 知识点 A Shifting Stacks 思维 B Eastern Exhibition 思维 C1 Guessing th ...

  5. Codeforces Round #703 (Div. 2) 题解

    文章目录 A. Shifting Stacks B. Eastern Exhibition C. Guessing the Greatest D. Max Median E. Paired Payme ...

  6. Codeforces Round #703 (Div. 2) A-E 题解

    Shifting Stacks 给你 n 长度的数组,每个下标包含 000-nnn 个木块 其中可以将某一位置的木块向右边平移 请问是否能凑出高度严格上升的数组 一开始想简单了 直接判断木块的和是否大 ...

  7. 【英语学习】【Daily English】U14 Transportation L01There will be a car exhibition next month

    文章目录 Word Preparation upcoming event:近期活动:即将发生的事件 display:v. 展示,陈列 exhibition:展览会,展出 There will be . ...

  8. Sonya and Exhibition 【模拟】

    题目链接:https://cn.vjudge.net/contest/280309#problem/J 题目描述 Sonya decided to organize an exhibition of ...

  9. CodeForces - 1004B - Sonya and Exhibition(纯思维题)

    题目链接: http://codeforces.com/problemset/problem/1004/B 题目: Sonya decided to organize an exhibition of ...

最新文章

  1. DB天气app冲刺二阶段第十一天(完结)
  2. 【里程碑式证明】同时解决了量子物理学和理论数学的难题!
  3. (转载)以太网最大帧和最小帧、MTU .
  4. Cilium 首次集成国内云服务,阿里云 ENI 被纳入新版本特性
  5. 30万奖金等你拿 | “信也科技杯”第五届数据解决方案应用大赛火热报名中!...
  6. VMware+Win7+windbg 双机调试
  7. HLS中数据的合并与拆分
  8. Sphinx全文检索引擎测试
  9. HTTP 协议 -- 浏览器缓存机制
  10. ntp linux 使用,linux-ntp 使用
  11. JAVA 进制转换的几个方法
  12. 利用向量求点到线的最短距离
  13. 解决百度云离线文件因含有违规内容被系统屏蔽无法下载问题
  14. 【独行秀才】macOS Big Sur 11.6.5正式版(20G517)原版镜像
  15. Andriod 获取手机CPU型号设备信息
  16. 【游戏客户端】如何实现环形进度条
  17. 1+X 5G移动网络运维 - 第一篇
  18. 视频剪辑技巧,教你视频画面用图片进行遮挡的方法
  19. java基本类型和使用
  20. WIKI--维基百科

热门文章

  1. 震惊世界的亚洲8大奇迹,你都知道几个?
  2. 如何快速解剖数据背后隐藏的信息
  3. c语言出勤成绩,C语言课程设计学生考勤系统文档推荐 (10页)-原创力文档
  4. mysql tdh_socket_thread_num_TDH_Socket的一些性能对比数据
  5. 超详细图解!【MySQL进阶篇】MySQL索引原理
  6. oracle crontab e,Linux运维知识之通过crontab -e编辑生成的定时任务,写在哪个文件中...
  7. centos 6 x64 mysql_CentOS 6.x版本升级Mysql
  8. android手机拍摄权限,react-native 手机拍照权限
  9. vector容器中查找某一元素是否存在(牛逼的vector!!!!!!)
  10. 模板编译template的背后,究竟发生了什么事?带你了解template的纸短情长