前言
計算幾何,雖然不少題都是板子來套,但我們應深知,「借」來的板子遠不如自己消化理解後打的板子拓展性強。沒有學不會的演算法,只有不想學的acmer。最近比賽接連遇到不少較為基礎的計算幾何,因為沒有接觸這方面因此錯失ac,如今比賽、題目、安排較多,因此先簡單花一兩周入個門,以後再打算深入時,有了之前的基礎,就不會那麼難
———————————————————————————2020.3.5 22:20pm
常用常量
1.π
=3.1415926...
π=3.1415926...
π=3.14
1592
6...
因為反余弦函式的取值範圍正好是[0,
π][0,π]
[0,π
],那麼π
ππ最精確的求法是用反余弦函式計算
;2.浮點數精度eps
epsep
s 因為浮點數在計算過程會有精度損失,因此浮點數比較時必須做減法再和eps
epsep
s比較
const
double eps=
1e-8
;
3.浮點整數最大值
因為double型別最多可以存308位,故其也可以儲存乙個很大的整數
const
double inf=
1e300
;
浮點誤差
浮點數比較
不能直接比較,有兩種解決辦法
1.誤差判別法
double d1,d2;if(
(d1-d2)
我們直接定義inl
ineinline
inline
的比較函式,後面比較浮點數不用寫ifif
if之間呼叫函式
inline int
dcmp
(double d)
inline int
cmp(
double x,
double y)
2.化浮為整
在不溢位的情況下,不斷乘以10
1010
直到無小數字,計算後再轉化為浮點數
浮點數輸出
因為計算機儲存時可能存了負零,要防止計算機輸出負零
注意事項
常用math函式
double
ceil
(double x)
;//向上取整
double
floor
(double x)
;//向下取整
double
round
(double x,
int pos=0)
;//四捨五入
double
sqrt
(double x)
;//開根號
double
fabs
(double x)
//求絕對值
計算幾何入門
以下內容由各位大神的部落格提取出來 向量。如果一條線段的端點是有次序之分的,我們把這種線段成為有向線段 directed segment 如果有向線段p1p2的起點p1在座標原點,我們可以把它稱為向量 vector p2。設二維向量p x1,y1 q x2 y2 則向量加法定義為 p q x1 x2...
計算幾何基礎入門(1)
平面最接近點對 二維凸包 最小覆蓋圓 模板 首先要知道兩個基礎知識 叉積與基礎運算子過載 二維叉積可以用來判斷點與點的位置關係與面積 三維叉積可算平面的法向量 這些模板都是二維的 我想想看能不能化為三維的題 空間最小點對 三維凸包 最小覆蓋球 例題 p4894 p3744 p2785 平面最接近點對...
計算幾何凸包入門詳解
講這個之前,先說一下我自己的看法 求凸包網上有很多種方法,個人覺得最好用最常用的就是graham掃瞄法,本篇博文我也就只講這一種演算法求解凸包。講這個問題之前我們必須要弄清楚何為凸包?我來口胡一下吧,很明顯凸包這個名詞就已經給了我們乙個重要的資訊,那就是這個東西它肯定是乙個凸多邊形。那除了是凸多邊形...