POJ 1375 Intervals(解析几何)

转载请注明出处,谢谢http://blog.csdn.net/acm_cxlove/article/details/7854526       by---cxlove

题目:给出一个光源,给出一些圆,求投影区间。

http://poj.org/problem?id=1375

求切线与X轴的交点坐标,排序后合并。

求一点与圆的切线,算是解析几何???

POJ 1375 Intervals(解析几何)_第1张图片

图好丑,好欢乐啊。。。首先可以求出角a,通过半径与PQ距离,而角b也可以求出。

那么就可以求出两条切线与Y轴的夹角,分别为a+b,b-a。不需要管正负,之后我们要求距离,负角就成了+不影响结果。

详见代码,简洁1A

#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define LL long long
#define eps 1e-8
#define inf 999999.0
#define zero(a) abs(a)R){
                printf("%.2f %.2f\n",L,R);
                L=line[i].l;R=line[i].r;
            }
            else
                R=max(line[i].r,R);
        }
        printf("%.2f %.2f\n\n",L,R);
    }
    return 0;
}




你可能感兴趣的:(ACM_计算几何)