UVa12304】的更多相关文章

UVA-12304 2D Geometry 110 in 1! 该问题包含以下几个子问题 CircumscribedCircle x1 y1 x2 y2 x3 y3 : 三角形外接圆 InscribedCircle x1 y1 x2 y2 x3 y3: 三角形内接圆 TangentLineThroughPoint xc yc r xp yp 过一点做圆的切线 CircleThroughAPointAndTangentToALineWithRadius xp yp x1 y1 x2 y2 r:找到…
基础题,注意精度和旋转方向. #include <iostream> #include <math.h> #include <vector> #include <algorithm> #include <string> using namespace std; #define PI acos(-1.0) #define M 100007 #define N 65736 const int inf = 0x7f7f7f7f; const int m…
计算几何: 堆几何模版就能够了. . .. Description Problem E 2D Geometry 110 in 1! This is a collection of 110 (in binary) 2D geometry problems. CircumscribedCircle x1 y1 x2 y2 x3 y3 Find out the circumscribed circle of triangle (x1,y1)-(x2,y2)-(x3,y3). These three p…
可真是道恶心题-- 首先翻译一下6个任务: 给出一个三角形,求它的外界圆. 给出一个三角形,求它的内接圆. 给出一个圆和一个点,求过这个点的切线的倾斜角\(\alpha \in [0,180)\).(这个点可能在圆内或圆上) 给出一条切线.圆上一点和圆的半径,求圆心位置.(此问题和后面的问题都可能无解或有多个解) 给出两条切线和圆的半径,求圆心位置. 给出两个外切圆和半径,求圆心位置. 若有多个解,从小到大输出答案.(点排序时以\(x\)为第一关键字) 可以发现,上面的问题经过简单的转换后,就是…
题目大意:求n个人比赛的所有可能的名次种数.比如:n=2时,有A第一B第二.B第一A第二.AB并列第一三种名次. 题目解析:既然是比赛,总有第一名.第一名的人数可能是i (1≤i≤n),则剩下待定的人数就是n-i...... 设 f(n)为n个人比赛时的名次种数.则 f(n)= ∑ C(n,i)f(n-i)  (1≤ i ≤n) 这道题和前一道 “How to add?” 类似. 代码如下: # include<iostream># include<cstdio># include…
断断续续写了250多行的模拟,其间被其他事情打扰,总共花了一天才AC吧~ 这道题目再次让我明白,有些事情看起来很难,实际上并没有我们想象中的那么难.当然了我主要指的不是这个题的难度…… 也是初学计算几何,然后居然胆大妄为地不用刘汝佳的思路去实现这些个功能,其中有三个功能是我用自己的思路实现的吧(瞎暴力),最后果然也是自己写的出锅了. 当一个贼长的模拟题交上去一发WA时,我是欲哭无泪的……这让我怎么debug……只好不断安慰自己要用计算几何题去练习耐心. 只是没想到在不断的固执与冷静的试探之下,不…
题目链接:https://cn.vjudge.net/problem/UVA-12304 题意: 作为题目大合集,有以下一些要求: ①给出三角形三个点,求三角形外接圆,求外接圆的圆心和半径. ②给出三角形三个点,求三角形内接圆,求内接圆的圆心和半径. ③给出一个圆,和一个点,求过该点的圆的切线与x轴的夹角(0<=angle<180): ④给出一条直线,一个点p,指定半径r,求经过点p的与直线相切的半径为r的圆: ⑤给出两条直线,求与这两条直线相切的圆: ⑥给出两个圆,求同时与这两个圆相切的圆:…
题意:求将n分为k个数相加的种数. 如:n=20,k=2,则可分为: 0+20=20 1+19=20 2+18=20 ....... 20 +0=20 共21种方案. 解析:令f(n,m)表示将n分为m个数相加的种数,则 f(n,m)=  ∑ f(n-i,m-1)   (0 ≤ i ≤n) 代码如下: # include<iostream> # include<cstdio> # include<set> # include<cstring> # inclu…
二维几何部分 // `计算几何模板` ; const double inf = 1e20; const double pi = acos(-1.0); ; //`Compares a double to zero` int sgn(double x){ ; ); ; } //square of a double inline double sqr(double x){return x*x;} /* * Point * Point() - Empty constructor * Point(dou…