原创 POJ 2318 || TOYS (叉積判斷左右位置進行折半查找

給你一個矩形的左上角和右下角的座標,以及從左到右把矩形劃分爲若干個空間的線段。 這些線段都給出X的座標,所以線段的兩端座標爲,(Ui,Y1)  ( Li,Y2). 在給出M個點的座標,求每個空間內有多少個點。 利用叉積判斷這個點在線段的

原创 POJ 2954 || Triangle ( pick定理

給你三角形三個頂點的座標, 讓你求三角形內部的點數 pick定理 三角形的面積 = 三條邊上的點數/2 + 內部的點數  - 1 一個pick定理模板,邊上的點用GCD算。 三角形面積叉積的一半。 #include<iostream> #

原创 計算幾何模板之二維點線面模板

#include<cmath> #include<cstdio> #include<algorithm> using namespace std; //================= 精度誤差 ============== const

原创 計算幾何 || 精度誤差

bool dy(double x,double y) // x > y { return x > y + eps; } bool xy(double x,double y) // x < y {

原创 UVA 11437 || Triangle Fun

給 A B C 的座標,  D E F分別爲三條邊的三等分點,求P R Q三角形的面積。 直接求三點座標就好了,算X積。 #include<iostream> #include<cstdio> #include<cmath> #incl

原创 POJ 1321 || 棋盤問題 (dfs + 優化

“#”可放置旗子,“.”不可放置。 DFS深搜一下就好了。題目真的很簡單粗暴,爲什麼我一開始還想用排列組合。。 問有多少中旗子擺放的方案數目,就是旗子可以擺出多少中圖形,旗子順序隨意。 從第一行順序開始往下搜索,注意,第一個放旗子的行數

原创 POJ 2826 || an easy problem ?!(未AC,呵呵~

今日未AC,來日再戰,頭腦混沌。 #include<cstdio> #include<cmath> #include<algorithm> using namespace std; const double eps = 1e-8; int

原创 UVA 11646 || Athletics Track(圓心角乘半徑 = 弧長

一個跑道,總長400. 兩邊的弧長一致,中間矩形長寬比爲 a:b 求具體的長寬數值。 算出比例後的弧長,求一下每份的K值就好了 = = #include<iostream> #include<cstdio> #include<cm

原创 UVA 12300 || Smallest Regular Polygon(給定兩點,求穿過兩點的最小正多邊形

題目灰常簡單粗暴,給你兩個不同的點,求穿過這兩個點的最小面積的正多邊形。 輸入數據,點A,點B,N; 輸出最小正多邊形的面積。 思維轉換,兩點一條線段,正多邊形包含這條線段,而正多邊形要最小,說明這條線段是這個正多邊形的兩點距離最遠。

原创 POJ 3304 || Segments (線段,直線相交

題目寫太久現在都快忘記題意是什麼了。 赤果果的WA了五六七發,後來改的快和kuangbin的題解一樣了。 思路是一樣的,但是自己的代碼就是過不了!! 注意的點。一開始將符號的重載是放在結構體外的,之後符號重載移到結構體內部就AC了。 這是

原创 2013 山東省賽 || Rescue The Princess

逆時針給你等邊三角形的兩個頂點啊A,B,求第三個頂點的座標。 思路:   將B點繞A點逆時針旋轉60°就OK了~就是我們要找的C點的座標。   這裏注意要將60°轉爲爲弧度,爲 P1/3 弧度。   大水題呵呵~希望我比賽的時候也能一A就

原创 POJ 3984 || 迷宮問題 (bfs

BFS搜索,1 表示牆壁, 0 代表可走。 一共有25個格子,每個各自有四個方向,講每個格子分割看成每個小迷宮的第一步,那麼就有100個第二步。 將這些狀態保存下來,並保存此狀態的前一個狀態,用於走出最短路徑~ 讓我再吶喊一下,最短路徑用

原创 HDU 5186 || 模擬map

模擬不進位的加法。 昨天晚上比賽的時候腦子估計被驢踢了 = = 一直map不出來,今早map出來了g++,超時,c++過, 加了各手寫輸入,結果c++掛了,g++過,一題水題反正把我弄得很坎坷,把危險代碼該了一下這下都過了。 還是不懂g+

原创 POJ 2653 || Pick-up sticks (線段相交

在二維平面隨機扔木棍,找出最頂上的沒有被別的木棍壓着的木棍,輸出這些木棍的序號。 核心算法就是線段相交: 函數最後兩句是判斷這兩條直線的相交,因爲是線段,所以要加上線段端點的約束。 bool inter(pline l1,pline l

原创 2014 遼寧 ACM 省賽 ( kuangbin oj 1020)|| Distance(兩點式直線公式或直線求交點

 少了一個等於號wa了數十發一直沒有檢查出來,我的內心幾乎是崩潰的。 給你一個100*100的矩形,再給你兩點,求這兩點確定的一條直線被這個矩形所截的長度。 矩形的四個頂點爲定點,(0,0) (0,100) (100,0) (100,10