题目描述
一个贪婪的国王要求他的建筑师建一堵墙(图中虚线)围绕他的城堡(图中实线),且墙与城堡之间的距离总不小于一个数L。输入城堡各个节点(图中实线与实线的交点)的坐标和L,要求最小的墙壁周长。
输入格式
输入文件第一行N(3 <= N <= 1000)和L(1 <= L <= 1000),其中N为节点个数。
以下N行每行是各个节点的横坐标Xi和纵坐标Yi,其中-10000 <= Xi,Yi <= 10000。
输出格式
输出文件仅一个数,为最小的墙壁周长(四舍五入至整数)。
样例数据
样例输入
9 100
200 400
300 400
300 300
400 300
400 400
500 400
500 200
350 200
200 200
样例输出
1628
题目分析
凸包长度+半径为l的圆周长
源代码
#include<algorithm>
#include<iostream>
#include<iomanip>
#include<cstring>
#include<cstdlib>
#include<vector>
#include<cstdio>
#include<cmath>
#include<queue>
using