题目大意:给出城堡的若干点,要求在其周围建围墙,使距离城堡>=L,并使长度最短。
思路:
求出若干点的凸包,每个边平行向外延伸L,断开处用圆弧连接,圆弧的端点连接原凸包顶点,则分别与两边垂直,则圆心角与内夹角互补。
设凸包为n边形,则凸包内角和为(n-2)*PI ,则凸包外所有圆心角和为n*PI-(n-2)*PI=2*PI,刚好为一半径为L的圆周长。
求凸包时 按y从小到大排 y相同按x从小到大排。
题目大意:给出城堡的若干点,要求在其周围建围墙,使距离城堡>=L,并使长度最短。
思路:
求出若干点的凸包,每个边平行向外延伸L,断开处用圆弧连接,圆弧的端点连接原凸包顶点,则分别与两边垂直,则圆心角与内夹角互补。
设凸包为n边形,则凸包内角和为(n-2)*PI ,则凸包外所有圆心角和为n*PI-(n-2)*PI=2*PI,刚好为一半径为L的圆周长。
求凸包时 按y从小到大排 y相同按x从小到大排。
#include<iostream> using namespace std; int main() { int n; while(cin>>n) { if(n%2==0) cout<<"YES"
題目大意:方程 a*x1^2+b*x2^2+c*x3^2+d*x4^2=0 a,b,c,d的範圍爲[-50,50] , x1,x2,x3,x4的範圍爲[-100,100]. 現給出a,b,c,d,