正直角三角形

来源:互联网 发布:淘宝购物津贴怎么用 编辑:程序博客网 时间:2024/06/09 19:49


Description

在平面直角坐标系的第一象限内有M个点。“正直角三角形”是一种奇特的三角形,它的三个顶点分别在原点、X轴的正方向和Y轴的正方向。请用一个面积最小的“正直角三角形”将这些点全部围住,求解面积的大小。题目中所有的坐标(包括正直角三角形的顶点坐标)都为整数。

Input

有多组样例(不超过100组),每组样例第一行包括一个正整数M,接下来M行每行包括两个正整数xi,yi表示第i个点的坐标。

(1<=M,xi,yi<=100)

Output

每行一个答案(保留一位小数)。

Sample Input

21 11 221 21 3

Sample Output

4.06.0

HINT

因xy均小于100,故所求三角形200*200 的正方形内,数据量较小,采用枚举的方法,将所有可能的情况算一遍,

#include<iostream>#include<string.h>#include<algorithm>using namespace std;main(){struct Poi{int x,y;}a[1000];int n;while(~scanf("%d",&n)){for(int i=0;i<n;i++){scanf("%d%d",&a[i].x,&a[i].y);}//int flag=0;double max=40000.0;for(int i=1;i<201;i++) for(int j=1;j<201;j++){  int flag=0;  for(int k=0;k<n;k++)  {   if(j*a[k].y>a[k].x*i*-1+i*j)   {   flag=1;   break;   }    }    if(!flag)    {   max=min(max,i*j/2.0);    }   }     printf("%.1f\n",max);}}

0 0
原创粉丝点击