原创 ZPJ - 1053 FDNY to the Rescue!(最短路 Dijkstra),POJ 1122

題目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1053、http://poj.org/problem?id=1122 題意: t組數據,n個路口,n*n矩陣

原创 ZOJ - 2750 Idiomatic Phrases Game (最短路徑)

題目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1750 題意: n個成語,前一個成語的最後一個字,與後一個成語的第一個字相同,求最小查詢時間 分析: 有向圖,查

原创 ZOJ - 1654 Place the Robots (構圖 最大匹配)

題目:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=654 題意: ‘o’, ‘*’, ‘#’-> 空地, 草地, 牆壁 只有空地可以放機器人,且機器人會向四個方向開

原创 Vijos P1098 合唱隊形 (雙重LIS)

題目:Vijos P1098 合唱隊形題意:    實現中間高,兩邊低的隊形,剔除的最少人數分析:    剔除最少人,即是隊伍最長達到最大長度,分別實現升序、降序,相加最大爲目標隊形    狀態:dp1[i]表示i爲終點的最大升序,dp2

原创 Codeforces Round #FF(255) C. DZY Loves Sequences (LIS升級)

題目:C. DZY Loves Sequences (LIS升級)題意:    在n個數中,最多改變一個數字,並求能夠達到的最長嚴格上升子序列(連續)長度分析:    考慮第i個數,能否改變後拼接前後兩個字串,並維護當前最大值    狀態

原创 LIS - 最長上升子序列 (二分優化)

題目:    長度爲n的序列a1, a2, ..., an,選出滿足 j < i 時, a[j] < a[i] 最長子序列分析:    當選擇第i個時候,在j<i中,選出a[j]<a[i]的數加入,維護最大長度    狀態:dp[i]表示

原创 01揹包(降維 + 常數級優化)

題目:    共n個物體,第i個重量爲w[i],價值v[i],揹包最多能背不超過W的物體,求最大的價值分析:    每個物體只有一個,在容量允許時(W>w[i]),則對於每個物體只有取、不取兩種選擇    狀態:dp[i][j]:前i個物