hdu 2036 改革春风吹满地
2014-03-24 12:05
267 查看
链接:http://acm.hdu.edu.cn/showproblem.php?pid=2036
多边形面积公式S=0.5 *abs ( (x0*y1-x1*y0) + (x1*y2-x2*y1) + ... +(Xn-1*y0-x0*Yn-1))最后一个要注意加上
只有各点是逆时针排列才能这样做
#include<iostream>
#include<stdio.h>
#include<cmath>
using namespace std;
int main()
{
intx[100],y[100];
int n;
int i;
doublesum;
while(cin>>n)
{
if(!n)break;
sum=0;
scanf("%d%d",&x[0],&y[0]);
for(i=1;i<n;i++)
{
scanf("%d%d",&x[i],&y[i]);
sum+=(x[i-1]*y[i]-x[i]*y[i-1]);
}
sum+=(x[n-1]*y[0]-x[0]*y[n-1]);
printf("%.1lf\n",fabs(sum*1.0/2));
}
return0;
}
多边形面积公式S=0.5 *abs ( (x0*y1-x1*y0) + (x1*y2-x2*y1) + ... +(Xn-1*y0-x0*Yn-1))最后一个要注意加上
只有各点是逆时针排列才能这样做
#include<iostream>
#include<stdio.h>
#include<cmath>
using namespace std;
int main()
{
intx[100],y[100];
int n;
int i;
doublesum;
while(cin>>n)
{
if(!n)break;
sum=0;
scanf("%d%d",&x[0],&y[0]);
for(i=1;i<n;i++)
{
scanf("%d%d",&x[i],&y[i]);
sum+=(x[i-1]*y[i]-x[i]*y[i-1]);
}
sum+=(x[n-1]*y[0]-x[0]*y[n-1]);
printf("%.1lf\n",fabs(sum*1.0/2));
}
return0;
}
相关文章推荐
- 求任意多边形的面积&HDU-2036 改革春风吹满地
- hdu 2036 改革春风吹满地
- HDU_ACM-2036 改革春风吹满地
- hdu_2036 改革春风吹满地(多边形面积)
- HDU 2036 改革春风吹满地
- HDU 2036 改革春风吹满地
- HDU 2036 改革春风吹满地(求多边形面积)
- hdu-oj 2036 改革春风吹满地(多边形面积)
- hdu 2036 - 改革春风吹满地(计算几何)
- HDU 2036 改革春风吹满地
- hdu 2036 改革春风吹满地
- HDU 2036 改革春风吹满地 数学题
- [HDU 2036]改革春风吹满地
- 【HDU 2036】改革春风吹满地
- HDU 2036 改革春风吹满地
- HDU 2036 改革春风吹满地(多边形面积)
- hdu 2036 改革春风吹满地
- HDU 2036 - 改革春风吹满地
- HDU - 2036 改革春风吹满地
- HDU 2036 改革春风吹满地