原创 網絡流 poj 1698

        Alice 要拍電影,每天智能拍一部電影,現在有幾部電影讓他去拍,每部電影都有要求至少拍的天數和必須要在前幾個禮拜拍完。       網絡流的題目:        將這幾個禮拜的天數全部拆成點,將所有點和這天能拍的所有電

原创 poj 3041 二分圖匹配

題目可以這麼理解,給出你一些東西的座標,現在你可以選擇一行一行或者一列一列選擇,求最少的選擇次數能夠覆蓋所有的點。 例如 '.'表示空格,'A'表示有東西 A .  A .  A  . .  A  . 對應輸入: 1 1 1 3 2 2

原创 LIS (最長上升字序列) nlgn 解法

LIS, 一道比較經典的動態規劃題目。 對於長爲n的序列 F[n] = max{F[k] + 1,F[n] | if arr[k] < arr[n] } 時間複雜度 O(N^2) 線性空間。 最近看到網上的一種 nlgn的解法,深受啓發

原创 最大的算式(BigExp) 動態規劃

還記得是去年做的DP題目,題目大意如下: 給出N個數字,不改變它們的相對位置,在中間加入K個乘號和N-K-1個加號,(括號隨便加)使最終結果儘量大。因爲乘號和加號一共就是N-1個了,所以恰好每兩個相鄰數字之間都有一個符號。例如: N=5

原创 數字劃分類 dp

轉載自 http://www.cnblogs.com/wanghetao/archive/2013/11/25/3442192.html  整數劃分 --- 一個老生長談的問題: 描述 整數劃分是一個經典的問題。請寫一個程序,

原创 字符串類DP Align

【問題描述】 考慮兩個字符串右對齊的最佳解法。例如,有一個右對齊方案中字符串是AADDEFGGHC和ADCDEGH。 AAD_DEFGGHC ADC

原创 泛化揹包問題

簡寫,筆錄,不寫太多。    概要:         給出若干物品,對於每個物品的投入x,會得到一個特定回報f(x)         已知總投入爲M元,求能得到的最大回報N元。 方程即爲:dp(x) = max{ dp(x),dp(a)

原创 選擇客棧 noip2011

在openjudge上做的題目,原來是2011年的=====。 題目: 麗江河邊有 n 家很有特色的客棧,客棧按照其位置順序從 1 到n 編號。每家客棧都按照某一種色調進行裝飾(總共 k 種,用整數 0 ~ k-1 表示),且每家客

原创 poj 1416

題目大意:      將一串數字分成若干個部分  ( 例如12346) 求其中和不超過數字 n (例50) 的最大值。      比如說 12346  可以分成 12+34+6 = 52      1+2+34+6 = 43      其

原创 Treap 樹

Treap樹堆 是一種 隨機平衡二叉樹。 相對於正正規規的AVL樹,倒是靈活了許多。 Treap 也有旋轉模式,但是隻有單選轉,而且Treap的旋轉,怎麼旋轉,該不該旋轉完全是隨機化的,這樣子在大大減少了編碼量的同時,相對也把效率給提了上

原创 【並查集】 映射拆點 uva 11987 Almost Union-Find

題意: 維護一個數據結構,能夠支持三種操作: 1、將p,q元素併入一個集合中 2、求出p元素所在集合元素個數、元素之和 3、把元素p從原集合移動到元素q所在集合   顯然是一道並查集的題目,需要額外維護的數據是size[]和sum[],這

原创 【帶權值並查集】 hdu 3038 How Many Answers Are Wrong?

題目大意: 假設你有一組數列: 給出一系列三元組(l,r,val) 表示[l,r]的區間和爲val 不斷地給出這樣的三元組,有時候三元組會有不可能地情況出現。 問有多少個錯誤的情況出現: 其實自己想,很難想到這個題目居然是道並查集 額外

原创 【圖的再構造】 uva 10917

題目大意:一張無向圖上面有Jimmy的家和Jimmy的公司。 Jimmy必須要走滿足一下條件的路:如果Jimmy要從A走到B,必須存在一條以B爲起點的路徑,比從任何一條以A爲起點的路徑短。   思路:所謂的“必須存在一條以B爲起點的路徑,

原创 【dijkstra變形】 uva 11367 Full tank?

題目大意: 在一張無向圖中,你的車要從起點走到終點。你走多少距離要耗費多少油。每個地方加油的錢不一樣,你可以不加,加一個單位,加滿。。。。油量箱是有上限的。 一開始你的車油容量爲空。 求到終點最便宜花多少錢。 節點:n <= 1000  

原创 【tarjan(scc)+縮點】 hdu 2767 Proving Equivalences

題目大意:有n個命題,和一些於a->b的推導式子,問還需要幾個證明能保證這些命題等價。   思路:        連通分量裏的點自然是已經互相等價了。我們可以縮點,然後判斷還需要加多少遍是的後來的點圖成爲一個強連通分量。 與找scc個數不