原创 POJ - 1287 Networking (最小生成樹Kruskal)

題目:http://poj.org/problem?id=1287 題意: P(<=50)個點,R(< long long)對邊,找出最小通路和 分析: 長度爲邊權的最小生成樹問題 注意邊數的數目不限,注意long long,存入邊數,和

原创 POJ - 1251 Jungle Roads (最小生成樹Kruskal、並查集)

題目:http://poj.org/problem?id=1251 題意: n個村子,每個村子後面連接各自的鄰村、路費,選出使得全部村子相連的最小通路 分析: n個節點,村子之間的路費爲邊的權值,Kruskal算法求最小生成樹 核心:

原创 HDU - 1087 Super Jumping! Jumping! Jumping! (簡單LIS)

    HDU - 1087 Super Jumping! Jumping! Jumping! 題意:    n個數中,選出升序的序列,使得和最大分析:    第i個數爲結尾的時候,前面比他小的數都能加上,選擇和最大的,最優化原理    

原创 HDU - 1421 搬寢室 (DP)

題目鏈接:HDU - 1421 搬寢室題意:    n件物體裏面,取2*k件(每次2件),每次疲勞度爲兩件物體質量差的平方,求結束後的最小疲勞度    因爲相鄰的質量差最小,所以可以先排序,每次只用考慮從相鄰的地方取    對於每一個物體

原创 HDU - 1213 How Many Tables (簡單並查集)

題目:http://acm.hdu.edu.cn/showproblem.php?pid=1213 題意: T組數據, 1~n個數,m對關係,開始每個數一個組,每個組間出現關係邊,則合併這兩個組,求最後剩餘組數 分析: 二維鄰接矩陣搜索可

原创 ZOJ - 1203 Swordfish (非負權值的最小生成樹/最短路 - Kruskal算法)

題目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=203 題意: 將n個城市,全部連通起來的最短長度 分析: n個點,每個點與其他n-1個點均可相連,距離d由座標計

原创 HDU - 1159 Common Subsequence (簡單LCS)

    HDU - 1159 Common Subsequence題意:    在兩個字符串x,y中,求它們最長的公共子串長度分析:    存在x[i] == y[j]時,則公共子串長度+1,否則,維護當前最大值    狀態:dp[i][

原创 HDU -- 2084 數塔(簡單DP)

    HDU -- 2084  數塔題意:    自上而下,選擇一條累計和最大的路徑分析:    頂點只與左右兩個子節點相關,且子節點路徑的選擇與頂點無關(無後效性)    狀態dp[i][j]:表示(i,j)點向下得到的最大累計和  

原创 HDU - 1176 免費餡餅 (簡單DP)

    HDU - 1176 免費餡餅題意:    有n塊餅,第t秒會落在x上,起點位於x = 5,每次只能移動±1步,求最多能得到餅的數目分析:    第t秒時,任意位置x最終的最大餅數,只與下一秒時,三個可達點x-1,x,x+1的最大

原创 ZOJ - 1586 QS Network (最小生成樹 Kruskal)

題目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=586 題意: T組數據,n個物體,n個物體的價格,矩陣爲物體之間的距離,求所有物體相連之後的最小值(每個物體只能

原创 POJ - 1422 Air Raid (最小路徑覆蓋 = 總點數 - 最大匹配)

題目:http://poj.org/problem?id=1422 題意: n*n的方陣,存在若干條有向邊相連,選擇若干個點組成的路爲一條參觀路徑,所有的路徑都不存在相同點,選擇最少路徑,使得這些路徑包括所有節點,即最小路徑覆蓋問題 分析

原创 HDU - 2222 Keywords Search (AC自動機)

題目:http://acm.hdu.edu.cn/showproblem.php?pid=2222 題意: 給出n個單詞,最後給出一字符串,需要找出該字符串裏面出現了多少個給出的單詞 每個單詞出現只記錄一次,例:給出單詞:ab,abc。字

原创 POJ - 2195 Going Home (構圖 最大匹配KM算法)

題目:http://poj.org/problem?id=2195 題意: ‘.’ ,‘m’, ‘H’ -> 通路, 人, 房子 讓所有人回到房子裏,使得總路徑最小 分析: 由題意可知,人與房的距離爲權值,人和房子分別爲x、y兩個集合,

原创 ZOJ - 1203 Swordfish (最小生成樹 Prim)

題目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=203 題意: n個點(xi,yi),將所有點相連的最小值 分析: 權值爲距離的最小生成樹,每兩個都建立一條邊,完

原创 POJ 3630 - Phone List (Trie樹)

題目:http://poj.org/problem?id=3630 題意: t組數據,每組數據n行號碼,若每個號碼都不是其他任意號碼的前綴,則YES 分析: 建立Trie樹,判斷新加入號碼前綴是否已經爲出現過號碼(如:加入1234,已經出