2016-2017 CT S03E05: Codeforces Trainings Season 3 Episode 5 (2016 Stanford Local Programming Contest, Extended) J
2024-08-27 04:40:32
链接:http://codeforces.com/gym/101116
题意:给出n个点,要求一个矩形框将(n/2)+1个点框住,要面积最小
解法:先根据x轴选出i->j之间的点,中间的点(包括两边)按照y排序,固定一边X=(xj-xi),Y就枚举点两端的Y坐标,细节是注意要取(n/2)+1个点
事实上这样取里面一定符合要求
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cstring>
using namespace std;
struct P
{
int x,y;
}H[10000],X[10000];
bool cmd1(P a,P b)
{
if(a.x==b.x)
{
return a.y<b.y;
}
else
{
return a.x<b.x;
}
}
bool cmd2(P a,P b)
{
if(a.y==b.y)
{
return a.x<b.x;
}
else
{
return a.y<b.y;
}
}
int main()
{
int t,n;
cin>>t;
while(t--)
{
int ans=(1<<31)-1;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>H[i].x>>H[i].y;
}
if(n==1)
{
cout<<"0"<<endl;
continue;
}
int num=n/2+1;
sort(H+1,H+n+1,cmd1);
for(int i=1;i<=n;i++)
{
for(int j=i+1;j<=n;j++)
{
int cot=0;
//枚举ij之间的点,按x坐标
for(int k=1;k<=n;k++)
{
if(H[k].x>=H[i].x&&H[k].x<=H[j].x)
{
// cout<<"A"<<endl;
X[++cot]=H[k];
}
}
sort(X+1,X+1+cot,cmd2);
for(int k=1;k<=cot;k++)
{
// cout<<X[k].y<<"A"<<endl;
}
int x1=H[i].x;
int x2=H[j].x;
// cout<<x1<<"B"<<x2<<endl;
for(int k=1;k<=cot-num+1;k++)
{
int y1=X[k].y;
int y2=X[k+num-1].y;
// cout<<y1<<"B"<<y2<<endl;
ans=min(ans,(x1-x2)*(y1-y2));
}
}
}
cout<<ans<<endl;
}
return 0;
}
最新文章
- linux学习笔记-(1)-安装
- javascript高级程序设计---NodeList和HTMLCollection
- 仿淘宝详情转场(iOS,安卓没有这功能)
- iOS-Debug调试
- 在hdfs上存取xml文件的实现代码
- RDO部署openstack(1)
- 【leetcode】367. Valid Perfect Square
- ASP.NET中如何生成图形验证码
- Objective-C NSObject 的实现分析(2014-10-23更新)
- 【Python3之面向对象的程序设计】
- 【一天一道LeetCode】#108. Convert Sorted Array to Binary Search Tree
- 使用genism训练词向量【转载】
- java之jvm学习笔记十三(jvm基本结构) 通俗易懂的JVM 文件,没有之一
- nginx配置https并强制http自动跳转到https
- 数据库ADO方式读取图片
- LeetCode——Basic Calculator II
- 关于html与body的高度问题
- AvalonEdit-基于WPF的代码显示控件
- ”$-”与shell默认选项
- es学习-索引配置
热门文章
- [原创] 关于quartz (spring 中的任务调度器)时间配置
- Myeclipse10编写jsp时出现 Multiple annotations found at this line:
- 关于C语言链表的学习
- 在TextView上加上下划线或中划线
- Fresco源码解析 - DataSource怎样存储数据
- paper 55:图像分割代码汇总
- Java -verbose:gc 命令
- 夺命雷公狗---DEDECMS----5快速入门之商城快速搭建实现快递方式和支付方式的显示
- zw版【转发&#183;台湾nvp系列Delphi例程】HALCON SelectObj
- Qunar实习回顾总结