原创 UVA 1601 POJ 3523 The Morning after Halloween 【雙向BFS】【A*】 (好題)

題目鏈接 題意 問移動圖上三個Ghost同時到達目標點的最短步數。三個Ghost可以同時移動,但不能重疊,不能交換位置。 雙向BFS做法 因爲狀態比較多,直接BFS會T,因此用雙向BFS來優化。然而直接上雙向BFS還是會T,在BF

原创 UVA 10570 Meeting with Aliens 【枚舉+結論題】

題目鏈接 題意 給一串環形序列(首尾相連),可以進行交換任意兩個數的操作。問最少進行多少步這樣的操作能夠使得整個序列的順序正常(即從序列中的1開始,順時針或逆時針相鄰遞增) 分析 首先這個題有一個簡單的結論,如果要通過兩兩交換使得

原创 UVA 10603 Fill【BFS】

題意 有三個給定容量的沒有刻度的杯子,其中一個杯子裝滿水,問量出給定水的體積需要倒多少水(倒水時水量的和) 分析 直接BFS,但非常容易寫錯 AC代碼 //UVA 10603 Fill //AC 2016-07-19 16:11:

原创 POJ 3255 Roadblocks 【次短路】

題目鏈接 題意 給N個節點,R條雙向邊求從結點1到N的次短路徑 分析 通過這個題學習了一下次短路的求法。求K短路可以用A*+Dijkstra,有機會再學一發。 求次短路可以改進一下求最短路的Dijkstra,對每個結點不僅記錄最

原创 POJ 3280 Cheapest Palindrome 【區間DP】

題目鏈接 題意 給你一串字符串,並給出添加以及刪除(在任意位置)每種字符的花費,問把這個字符串變成迴文串所需的最少花費 分析 經典的區間DP 狀態 設 dp[i][j]⇔將子串S(i,j−1)變成回文串的最小花費 習慣設成前閉

原创 HDU-3480 Division 【DP+斜率優化(二維)】

題目鏈接 題意 定義一個集合的花費是這個集合中的最大值減最小值的平方。然後給定一個集合S,求對這個集合的一個覆蓋,使得所有子集的花費和最小。 分析 本身這個題是非常簡單的,只是今天看了別人的題解,我發現我以前寫的二維斜率優化都寫複雜了。直

原创 HDU-2829 Lawrence 【斜率優化DP】【四邊形不等式優化】

題目鏈接 題意 背景故事大概是說一戰時一個英國間諜Lawrence要指揮突擊隊去炸燬奧斯曼帝國的一些鐵軌。鐵軌上有n個火車站,按線性排列,每個火車站上有一個權值,最後整個鐵路的價值就是每一段聯通鐵路段上的火車站權值兩兩相乘的和加起來(聯通

原创 CodeForces-450E Jzzhu and Apples 【數學+貪心構造】

題意 將1到n的數分成不互質的數對,問最多能分出多少對? 分析 貪心構造,先打出小於等於n的所有素因子,從最大的素因子開始(因爲越大的因子,在數列中的倍數越少),兩兩匹配其倍數。若剛好是奇數個,則將其2倍留下,因爲若能匹配出至少一對,其二

原创 HDU 5800 To My Girlfriend 【DP】

題意 有n個物品,每個物品的重量是ai ,求以下式子: ∑ni=i∑nj=1∑nk=1∑nl=1∑sm=1f(i,j,k,l,m)(i≠j≠k≠l) 其中f(i,jk,l,m) 表示在所有物品中必選i和j,且必不選k和l,重量總和爲m

原创 CodeForces 342D Xenia and Dominoes 【DP+容斥】

題目鏈接 題意 在一個3*n的桌子上放一些1*2的多米諾骨牌(橫豎放都可以),桌子上有一些不能放置的格子,除了這些不能放置的格子以外,還要求一個指定的格子不能被多米諾骨牌覆蓋,同時這個空位可以通過移動附近的骨牌來轉移到其他地方,剩下的格子

原创 HDU 4348 To the moon 【主席樹+區間修改】

persistent segment tree 題目鏈接 題意 給一串初始序列An,並且初始的時間是0,定義以下操作: 1. 給一個區間內的數加上一個值,並且時間加一 2. 查詢當前某區間的區間和 3. 查詢過去某個時間的某個區間

原创 HDU 3401 Trade 【DP+單調隊列優化】

題意 給出接下來T天每天賣出、買入股票的價格,每天買入、賣出的上限,持有的股票的總上限,並且兩次股票操作之間有時間間隔,求T天之後最多能賺多少錢。 分析 很容易可以寫出狀態轉移方程: dp[i][j]↔第i天持有j的股票能獲得的最大利益

原创 搬家至博客園說明

從今日起本博客已搬至博客園,本博客暫停使用,新博客地址:http://www.cnblogs.com/DrCarlluo/

原创 HDU-3045 Picnic Cows 【DP+斜率優化】

題目鏈接 題意 有N只奶牛,每隻奶牛有一個滿意度,如果把一些奶牛分到一個組內,那麼這些奶牛的滿意度都會下降到組中滿意度的最小值。現在規定每個組至少T只奶牛,求總的滿意度變化的最小值 分析 從這個題中我學到了斜率DP中規定了轉移距離的最小值

原创 POJ-1180 Batch Scheduling 【逆向DP+斜率優化】

題目鏈接 題意 一臺機器有N個物品要處理,每個物品的處理時間是Ti,花費係數是Fi,可以把這N個物品分包處理,打包需要花費時間S,機器每處理完一包物品就會把當前時間顯示出來(剛開始處理時時間爲0),那麼這包中每個物品的花費就是顯示的這個時