原创 POJ1850 遞推關係

2015/2/22 還是先得打表,求出組合數 比如一個字母的組合有幾種,兩個字母的組合有幾種,,三個字母的組合有幾種?(組合排列,不過楊輝三角形更方便,雖然我不知道爲什麼楊輝三角形這玩意可以來算通解組合數不過還是記下吧Orz)不太明白的

原创 poj 2488 dfs

2015/2/4 dfs,要按字典序輸出。 要用int tp[8][2]={{-2,-1},{-2,1},{-1,-2},{-1,2},{1,-2},{1,2},{2,-1},{2,1}};  不然就要全部的路徑比較了。。 #inc

原创 poj 1836 dp lis

2015/2/12 最長上升子序列 一開始沒看明白就埋頭亂搞。 兩次lis 取max 就提交(wa)了 其實   7 1 2 3 4 3 2 1 輸出是 7 這樣子,都明白了吧= =  做法:還是lis兩遍 然後是 dp1[i ]

原创 poj 3083 dfs

2015/2/4 這道題目難在題意。。 走迷宮的時候一般人選擇的最優方法就是靠着牆壁走,總能走到出口。 題目現在問的是選擇的方向,你靠牆壁左邊走需要的步數和靠牆壁右邊走需要的步數(後面的bfs請無視吧。。) 知道了題意 模擬一下,只要靠

原创 poj 3176

2015/2/12 數塔。 #include<map> #include<queue> #include<stack> #include<cmath> #include<vector> #include<climits> #inclu

原创 poj 1080

2015/2/13 說不出來是什麼dp。。 問在給定矩陣條件的情況下兩字符串的最優匹配程度。 那就類似最長公共子序列了...(雖然這樣說沒有一點科學依據但是你砍我啊!) 字符串s1 和字符串s2  for-> i s1 for->j  

原创 poj 1276 dp多重揹包

2015/2/12 簡單的多重揹包 只不過數據不太水,不能用10揹包來水過 我用的是拆包。。 就這樣。。 #include<map> #include<queue> #include<stack> #include<cmath> #i

原创 poj 2240 最短路

2015/1/29 無腦for for for.的最短路 一開始用map把貨幣名hash下就好。 (= =某沙比,輸出了YES,NO,然後....“算法沒錯啊”....) #include<map> #include<qu

原创 poj3267 dp

2015/2/12 Dp,字符串的匹配。 for - > dp[ i ] 表示字符串前 i個 字母  的 不 匹配數量   for -> 遍歷字典中的單詞 每個單詞都去匹配一遍,如果字符串 的 前 i 個字符能完全匹配單詞就記錄,取匹配