计算几何之大圆包含小圆问题




题意:

给出一个大圆,n个小圆,求大圆匡小圆时小圆半径和最大是多少

题解:

 使用类似扫描线的东西

先搞出各个端点,然后求一个前缀和就好了

若是求园的个数,那么下面p数组的第二个值为 1  或者 -1即可


#include
#include
#include
#include
using namespace std;

#define MAXN 100005
#define LL long long
pairp[MAXN*2];

int main()
{
    int n,R,T;
    int x,y,r;
    freopen("walk.in","r",stdin);
    //freopen("in.txt","r",stdin);
    scanf("%d",&T);
    while(T--)
    {
        int cnt=0;
        scanf("%d%d",&n,&R);
        for(int i=0;i-sum?ans:-sum;
        }
        printf("%lld\n",ans);
    }
    return 0;
}


你可能感兴趣的:(计算几何,通用模板,acm)