【計算幾何基礎】
1、儲存方式:
點 向量 (x, y)
圓 圓心,半徑
射線,線段,直線 兩個點
多邊形 順時針/逆時針點座標
2、精度問題
3、向量運算
點積
滿足分配律
a * b * cos α = a.x * b.x + a.y * b.y
a在b上投影於b都乘積
垂直點積為零
叉積
滿足分配律
a * b * sin α = a.x * b.y - a.y * b.x
可以代表以兩向量為邊的平行四邊形面積
-> 可用於三角形已知三點座標求面積
cross(a, b) > 0 <=> a在b的順時針方向
點到直線距離 = 2 * 直線上任取兩點算三角形面積 / 兩點距離
平行叉積為零
【仍在更新】
相關推薦
【計算幾何基礎】
1、儲存方式: 點 向量 (x, y) 圓 圓心,半徑 射線,線段,直線 兩個點 多邊形 順時針/逆時針點座標 2、精度問題 3、向量運算 點積 滿足分配律 a * b * cos α = a.x * b.x + a.y * b.y a在b上投影於b都乘積 垂直點積為零 叉積 滿足分配律 a * b * s
【計算幾何+二分】 POJ 2318
虛空傳送門 【題目大意】給定一個箱子的左上角座標和右上角座標。給定n個隔板的端點座標【保證隔板不相交】,內部隔間從0到n編號。 給定m個玩具的座標【保證玩具在箱子內部且不在隔板上】,每個玩具在一個隔間內。 問每個隔間內有多少個玩具。 首先用叉積判玩具在隔板的哪個方位
Liaoning Ship’s Voyage【計算幾何+bfs】
題目大意:一個圖上有n*n個點,然後從起點走到終點,然後需要繞過三角形和“#”,問一個最短路徑 分析:由於邊上的點和端點都是能走的,我在擴充套件邊的時候,判斷該邊與三角形是否有焦點,我原先是判斷線段與線段的交點,然後判斷點是否在三角形內部,後來發現如果一個線段的
Tell Your World 【計算幾何+思維】
B. Tell Your World time limit per test1second memory limit per test256megabytes Connect the countless points with lines, till we reach
bzoj 3778: 共鳴【計算幾何+dp】
con b- 三角形面積 cmp getchar space for cpp std 枚舉起點,然後設f[i][j]為上凸殼上一個點是i當前點是j的最大面積,g是下凸殼,然後合並的時候枚舉結束點t合並上下凸殼即可 這樣的好處是每次轉移都是往凸多邊形裏加一個三角形(s,i,j
【計算幾何 02】凸包問題(Convex Hull)
### 引言 首先介紹下什麼是凸包?如下圖: ![](https://gitee.com//riotian/blogimage/raw/master/img/20200921200555.png) 在一個二維座標系中,有若干點雜亂排列著,將最外層的點連線起來構成的凸多邊型,它能包含給定的所有的點,這個多
【學習筆記:計算幾何基礎3】 Convex Hull
排序 一個 流程 向上 pop while 幾何 兩個棧 其余 Ahead 10.6.2018 算法5(GS) 最優算法O(nlogn) 實現 1.預處理排序 選取LTL與第二LTL 對剩下的點進行極角排序 (ToLeft Text) 2.開兩個棧T與S (開頭相對!!!
【學習筆記:計算幾何基礎4】 Geometric Intersection
找到 篩選 檢查 結果 凸包 gap 直線 新的 ole Ahead 10.6.2018 新的章節,從凸包到幾何求交 定義 在一組幾何物體中找到公共部分 問題主要分4類 判斷問題(Determine) 即判定是否有交 計數問題(Count) 計算有多少交點 枚舉問題(En
【學習筆記:計算幾何基礎5】 Triangulation
png and 水平 都是 tro 情況 技術 art 嘗試 Ahead 10.7.2018 定義 三角剖分: 將一個多邊形分為幾個不重疊的三角形 2.對點集的三角剖分 對角線:連接多邊形非相鄰的頂點一條線段。 內對角線:沒有穿過多邊形邊界的對角線 對偶圖:對於原圖中的
計算幾何基礎 POJ 1269 Intersecting Lines 【直線相交判斷,求交點】
#include <iostream> #include <algorithm> #include <cstdio> #include <cmath> using na
【習題整理】計算幾何基礎
bzoj1074【scoi2007】摺紙 思路:考慮倒著做,每次將在摺疊的直線右邊的扔掉,左邊的點再對稱一次加入; 算幾知識:求向量關於法向量的對稱向量 點$A$關於點$B$對稱的點$C = 2B - A$ 如果要求$\vec{A}$關於法向量
【計算幾何】CDOJ1720 幾何幾何
-a section fin wap line [0 turn tor std #include<cstdio> #include<algorithm> #include<cmath> using namespace std; #d
【計算幾何+極角排序+爆ll】E. Convex
lfa string ret == mes 過程 一個 區別 problem https://www.bnuoj.com/v3/contest_show.php?cid=9147#problem/E 【題意】 給定n個點的坐標,可以選擇其中的四個點構造凸四邊形,問最多能構造
【計算幾何】【預處理】【枚舉】Urozero Autumn Training Camp 2016 Day 5: NWERC-2016 Problem K. Kiwi Trees
相交 const put vector freopen n) math turn blog 發現由於角的度數和邊的長度有限制,那倆圓如果放得下的話,必然是塞在兩個角裏。 於是預處理n個圓心的位置(註意要判斷那個圓會不會和其他的邊界相交),然後n^2枚舉倆角即可。 #inc
【計算幾何】【分類討論】Gym - 101173C - Convex Contour
turn ace return highlight gym rotate ons ltr sqrt 註意等邊三角形的上頂點是卡不到邊界上的。 於是整個凸包分成三部分:左邊的連續的三角形、中間的、右邊的連續的三角形。 套個計算幾何板子求個三角形頂點到圓的切線、三角形頂點到正方
【計算幾何】【bitset】Gym - 101412G - Let There Be Light
bit pen urn 接受 eset iostream scan || names 三維空間中有一些(<=2000)氣球,一些光源(<=15),給定一個目標點,問你在移除不超過K個氣球的前提下,目標點所能接受到的最大光照。 枚舉每個光源,預處理其若要照射到光源
hdu_6055 : Regular polygon (2017 多校第二場 1011) 【計算幾何】
include int scan ble pro set sort 根據 可能 題目鏈接 有個結論: 平面坐標系上,坐標為整數的情況下,n個點組成正n邊形時,只可能組成正方形。 然後根據這個結論來做。 我是先把所有點按照 x為第一關鍵字,y為第二關鍵字 排序,然後枚舉向量
【計算幾何】【圓反演】hdu6158 The Designer
using 技術分享 技術 幾何 ++i %d mat 圓的面積 logs 給你內外那倆圓的半徑,讓你按圖中標號的順序往縫裏塞n個小圓,問你小圓的總面積。 不知道圓反演的先去查一下定義。 將兩個圓的切點視作反演中心,任取反演半徑(比如1),將兩個圓反演成兩條平行直線,則那
【計算幾何】【分類討論】Gym - 101243I - Land Division
log clas algo 答案 cto esp turn 端點 name 題意:給你一個n個點的凸包,讓你切一刀,使得它變成一個m邊形和一個K邊形,問你切的這一刀最短是多少。 如果m+K==n+4,那麽一定切在兩條邊上,但是由於兩個線段間的最短距離,至少會經過一條線段的
【計算幾何】【DP】【tarjan】Day 10.6
long long pri cout logs 前綴 ret ble freopen style T1 計算幾何+遞推 1 #include <cstdio> 2 #include <cmath> 3 double w,x,r; 4 int