链接: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;
}

  

最新文章

  1. linux学习笔记-(1)-安装
  2. javascript高级程序设计---NodeList和HTMLCollection
  3. 仿淘宝详情转场(iOS,安卓没有这功能)
  4. iOS-Debug调试
  5. 在hdfs上存取xml文件的实现代码
  6. RDO部署openstack(1)
  7. 【leetcode】367. Valid Perfect Square
  8. ASP.NET中如何生成图形验证码
  9. Objective-C NSObject 的实现分析(2014-10-23更新)
  10. 【Python3之面向对象的程序设计】
  11. 【一天一道LeetCode】#108. Convert Sorted Array to Binary Search Tree
  12. 使用genism训练词向量【转载】
  13. java之jvm学习笔记十三(jvm基本结构) 通俗易懂的JVM 文件,没有之一
  14. nginx配置https并强制http自动跳转到https
  15. 数据库ADO方式读取图片
  16. LeetCode——Basic Calculator II
  17. 关于html与body的高度问题
  18. AvalonEdit-基于WPF的代码显示控件
  19. ”$-”与shell默认选项
  20. es学习-索引配置

热门文章

  1. [原创] 关于quartz (spring 中的任务调度器)时间配置
  2. Myeclipse10编写jsp时出现 Multiple annotations found at this line:
  3. 关于C语言链表的学习
  4. 在TextView上加上下划线或中划线
  5. Fresco源码解析 - DataSource怎样存储数据
  6. paper 55:图像分割代码汇总
  7. Java -verbose:gc 命令
  8. 夺命雷公狗---DEDECMS----5快速入门之商城快速搭建实现快递方式和支付方式的显示
  9. zw版【转发&#183;台湾nvp系列Delphi例程】HALCON SelectObj
  10. Qunar实习回顾总结