原创 POJ 1066 Treasure Hunt 計算幾何 枚舉線段與直線相交

題意 :從邊上出發   找到最少的路徑去取得寶藏    就是開最少了門    計算幾何  枚舉線段與直線相交 枚舉的線段是所有輸入的點 包括牆的四個角的點    直線也一樣     最後找出最小的相交次數   減一就是要開的最少門 #in

原创 uva 10494 - If We Were a Child Again

這道題給的數據非常重要   只要注意到了不用大數的除法都可以做    因爲除數是有限大的  用整形就能保存下來    然後就簡單了 模擬四則運算   很容易就能做出來了    取模也是一樣的 字符串的比較函數用着老錯  自己寫了一個 下面

原创 POJ 2031 Building a Space Station 簡單計算幾何 + 最小生成樹

如題  :簡單計算幾何 + 最小生成樹 求出連個cell的距離  小於零距離爲零    否者就是兩球心的距離減兩球半徑 因爲邊較少所以用鄰接矩陣存儲    最後用一個prim計算最小生成樹  答案就出來了 注意  :POJ在G++中編譯的

原创 HDU 2546 簡單的01揹包

一個簡單的01揹包變種 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; int main() { #ifdef LOCAL

原创 UVA 10652 - Board Wrapping 簡單計算幾何 凸包

這道題是一個簡單的凸包問題 關鍵的一點就是   把每個塊的四個頂點都求出來   最後排序求凸包      求的時候涉及到角度旋轉   因爲計算機上的三角函數都是弧度制的  轉換的時候注意一點    自己寫的旋轉的函數的角度參數是正的  還

原创 POJ 1410 Intersection

這道題有個地方比較坑人  也是大家看題沒看仔細    題目說了  不一定是按左上和右下給定矩形的(在這WRONG了多次)多麼痛的領悟   渣渣般的英語啊 注意這點後就沒什麼難的了 #include<cstdio> #include<cm

原创 POJ 3348 Cows 尋找凸包 凸包面積

非常簡單的凸包      找凸包  凸包面積的計算 直接上代碼    #include<cstdio> #include<cmath> #include<cstring> #include<algorithm> #define eps 1

原创 龐果英雄會 數組排序

第一次做這個網站的題目   感覺題目還不錯   雖然很多題不會  由於是第一次做我還以爲只能用給出的頭文件     於是自己寫了個堆排上去。。。 我感覺看題目的時候就是一個貪心的過程   每次交換的時候都把最大的排好  然後再排下一個  

原创 uva 442 - Matrix Chain Multiplication

矩陣乘法 :只有當矩陣A的列數與矩陣B的行數相等時A×B纔有意義。一個m×n的矩陣a(m,n)左乘一個n×p的矩陣b(n,p),會得到一個m×p的矩陣c(m,p)。 哎  自己數據結構學得太菜了     有思路   做了一上午才做出來  

原创 uva 253 - Cube painting

1,2,3,4,5,6六個面分別朝上  判斷是否匹配    不匹配則順時針旋轉總共三次   每次都要判斷是否匹配   總共24種狀態   每種狀態判斷一遍    滿足就輸出TRUE   否則輸出FALSE 哎  代碼寫得好搓 #inclu

原创 POJ 2653 Pick-up sticks 計算幾何 線段相交

計算幾何的題目   慶幸不用判斷共線  題目說了    第一種方法是讀入一個處理一個   結果超時了 第二種方法是讀完了後再處理    AC     同樣是暴力求解  但是也得講究技術啊 TLE代碼: #include<cstdio>

原创 UVA 11178 - Morley's Theorem 簡單的計算幾何

簡單的計算幾何題目     求出一個d點    其餘的點具有相同的解法    #include<cstdio> #include<cmath> #include<algorithm> #define eps 1e-10 using

原创 HDU 4611 Balls Rearrangement

這道題第一眼看上去就知道是數論的題  可惜做的題少了  不知道怎麼下手   自己推了很久的公式也沒退出來    後來看了別人的解題報告發現是最小公倍數的問題    再加上一個模擬就解決了     #include<cstdio> #in

原创 POJ 3304 Segments

題意:判斷N條線段在某個方向的投影是否有存在公共點。 枚舉所有點組成的直線  枚舉時注意去重  判斷是否存在一條直線都與已知線段相交     相交就輸出  Yes!   否者輸出No! 下面是代碼 #include<cstdio> #i

原创 uva 127 - Accordian Patience

大神的blog   題意   思路都有   http://www.cnblogs.com/devymex/archive/2010/08/26/1808604.html 本人的方法比較搓    模擬做的   而且效率不高  我感覺是這樣的