原创 概率dp學習整合

什麼都不會的概率Dp。。。把一些好的資料收集起來慢慢看把。。。orz這些大神,蔑視我這zz垃圾 轉自:http://blog.csdn.net/zy691357966/article/details/46776199 有關

原创 數位dp學習整合

基礎篇 數位dp是一種計數用的dp,一般就是要統計一個區間[le,ri]內滿足一些條件數的個數。所謂數位dp,字面意思就是在數位上進行dp咯。數位還算是比較好聽的名字,數位的含義:一個數有個位、十位、百位、千位……數的每一位

原创 POJ - 2778 DNA Sequence(ac自動機+矩陣快速冪)

題目鏈接:http://poj.org/problem?id=2778 題意:只有四種字符的字符串(A, C, T , G),其中給出M種字符串不能出現,問爲長度爲n的字符串可以有多少種。 思路:我覺得這篇大佬的博客講的很好:https:

原创 CodeForces - 799C Fountains(二分)

題目鏈接:http://codeforces.com/contest/799/problem/C 題意:給c,d兩個類型的噴泉,你有c的貨幣c個,d的貨幣d個,每個類型的貨幣只能買對應類型的噴泉,每個噴泉有一個美麗值和價格,問你必須買兩個

原创 CF1176C Lose it!(簡單題)

題目鏈接:http://codeforces.com/contest/1176/problem/C 題意:https://www.luogu.com.cn/problem/CF1176C 思路: 把這6個數按順序排成一排,傳遞一樣,比如現

原创 CF1168C And Reachability(位運算+dp)

題目鏈接:http://codeforces.com/problemset/problem/1168/C 題意:https://www.luogu.com.cn/problem/CF1168C 思路:最後一定時要跳到y,所以如果能達到那麼

原创 字典樹的使用與應用

之前一直沒怎麼關心字符串的相關數據結構,最近心血來潮就想學一下,昨天看了下manacher,感覺只是一個思想而已,並不是很難,然後又想起以前只是聽過的字典樹,大概知道是個什麼意思,一直沒來親手實現過,趁着中午沒課就自己敲了一下,發現實現也

原创 POJ - 2528 Mayor's posters(線段樹加哈希)

題目鏈接:http://poj.org/problem?id=2528題意:每次覆蓋一段區間,問你最後還能看到多少區間思路:總長度很大,1e7,線段樹開不來這麼大,所以就離散一下,n不大,一共也就20000個點,最後一樣的成段更新代碼:#

原创 HDU - 3586 Information Disturbing(樹形dp)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=3586 題目意思:給根節點爲1的一棵樹,刪除一些邊使葉子節點都不能到達根節點,並且邊權和不能大於m,使刪除邊的最大值最小,求最小值。 思路:這

原创 HDU - 1561 The more, The Better(樹形dp)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1561 題目意思:中文題。 思路:樹上揹包,當u=0(即在根節點時),往下dp可以不選自己,因爲自己無價值。 其他情況就必須選自己(因爲不選自

原创 HDU - 2196 Computer(樹形dp)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2196 題目意思:求每個點在這棵樹中的最長距離 思路:從一個點找最短路徑,要麼往兒子找,要麼往父親找,這就出現了兩個遞推方向。 1.所以從根節

原创 HDU - 2089 不要62(數位dp,通過這個最基礎的題來隨便談談數位dp)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2089 題目意思:給定區間沒有62和4的數有多少個 思路: 數位dp包括數位和dp。數位就是通過把數分解成一位一位的數來分析。那麼數位dp的d

原创 manacher算法

突然看到這個算法,就在網上找了個寫的不錯的,貼一下:https://www.felix021.com/blog/read.php?2040然後是hihocoder1032的ac代碼(模板)代碼:#include <bits/stdc++.

原创 HDU - 2159 FATE(二維費用揹包)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=2159思路:二維費用揹包即爲同時有兩個約束條件,dp數組多加一維,循環也多加一維,其他的一樣,具體看代碼代碼:#include <bits/s

原创 HDU - 1520 Anniversary party(樹形dp基礎)

題目鏈接:http://acm.hdu.edu.cn/showproblem.php?pid=1520 題目意思:每個點有權值,父節點和子節點不可以同時選,求最大權值和 思路: dp[x][0]表示x這個點不選,dp[x][1]表示這個點