洛谷3187 最小矩形覆蓋(旋轉卡殼)

2022-08-21 02:57:09 字數 439 閱讀 2737

這道題瞄了眼題解才知道怎麼做的。。。。

關於為什麼最後最優矩陣有一條邊在凸包上,emmm,留坑待證。

有了上面這個結論,這道題就over了,先求凸包,再旋轉卡殼找最小矩陣(左右點積,上方叉積)

精度簡直被卡的想吐(-0.00000是什麼?蛤?有毒吧?)。

#include#include#include#includeconst int maxn=5e5+10;

const double eps=1e-8;

using namespace std;

struct point

friend inline bool operator<(point a,point b)

}inline void rotating_celiper()

}}int main()

旋轉卡殼 最小矩形覆蓋

這道題是旋轉卡殼的乙個典型問題 首先我們瞎矇乙個性質 我們目標狀態的矩形一定有一條邊是凸包上的邊 的延長線 其實是可以證明的 首先,最小矩形必然每條邊上都有點 那麼如果不是凸包上的邊 那麼我們可以通過旋轉這個矩形,使得這個矩形的某條邊上不再有點 所以,我們只需要找出凸包,暴力列舉每條邊,用旋轉卡殼來...

洛谷P1034矩形覆蓋

據說是dp,所以我用dfs,居然a了,資料真水 說說思路,我們要求覆蓋所有點且不能重疊,顯然我們要從點入手,我們可以列舉每個點被哪個矩形重疊,因為如果列舉矩形覆蓋點的話,貌似不可做,具體怎麼實現呢?最好小夥伴們手動畫個圖,一下就明白了,列舉每個點被哪個矩形覆蓋,那麼必然是要根據點的座標來調整矩形的位...

HNOI2007 最小矩形覆蓋 旋轉卡殼

旋轉卡殼,orz orz orz 給定一些點的座標,要求求能夠覆蓋所有點的最小面積的矩形,輸出所求矩形的面積和四個頂點座標輸入格式 第一行為乙個整數n 3 n 50000 從第2至第n 1行每行有兩個浮點數,表示乙個頂點的x和y座標,不用科學計數法輸出格式 第一行為乙個浮點數,表示所求矩形的面積 精...