acm.timus.ru/problem.aspx?space=1&num=1020
题意是给定一个凸多边形,每个顶点有钉子。每个钉子都有半径r。问围绕该凸形的线段的长度。
伤心一晚都没有读清楚题意啊!!!还以为要先求出凸包呢。。。。。。。。
哎,读题是个伤心事。
#include<stdio.h>
#include<string.h>
#include<math.h>
int main()
{
int n,i;
double r,x,y,x0,y0,px,py,sum;
scanf("%d%lf",&n,&r);
sum=0.0;
scanf("%lf%lf",&x0,&y0);
px=x0;py=y0;n--;
while (n--)
{
scanf("%lf%lf",&x,&y);
sum+=sqrt(pow(x-px,2)+pow(y-py,2));
px=x;py=y;
}
sum+=sqrt(pow(px-x0,2)+pow(py-y0,2));
sum+=acos(-1.0) * 2 * r;
printf("%.2lf",sum);
return 0;
}