#include<iostream>
#include<math.h>
#include<stdio.h>
using namespace std;
int main(int argc, char *argv[]){
int edgeNum;
double r;
cin>>edgeNum>>r;
double x0, y0;
double perimeter=0;
double preX, preY;
double x,y;
for(int i=0;i<edgeNum;i++){
if(i==0){
cin>>x0>>y0;
preX=x0;
preY=y0;
}else{
cin>>x>>y;
perimeter+=sqrt(pow(x-preX,2)+pow(y-preY,2));
preX=x;
preY=y;
}
}
perimeter+=sqrt(pow(x-x0,2)+pow(y-y0,2));
perimeter+=2*acos(-1.0)*r;
printf("%.2lf\n",perimeter);
return 0;
}
参考文章:
http://blog.csdn.net/v5zsq/article/details/46827279