原创 Proving Equivalences HDU - 2767 一個有向圖加邊使之成爲強聯通

題意:給一個有向圖,問至少加多少條邊後可以變成強聯通圖 思路:先用tarjan來縮點,然後計算縮點之後的入度爲0的點,和出度爲0的點,ans等於他們之間的最大值。 爲什麼是最大值? 縮點之後是有向無環圖,可以看成若干鏈組成,入度

原创 玲瓏杯 1138 - 震驚,99%+的中國人都會算錯的問題(容斥原理)

**題意** 衆所周知zhu是一個大廚,zhu一直有自己獨特的鹹魚製作技巧.tang是一個鹹魚供應商, 他告訴zhu在他那裏面有N條鹹魚(標號從1到N)可以被用來製作. 每條鹹魚都有一個鹹魚值Ki,初始時所有Ki都是0. zhu是

原创 區間dp 小小結

A - Halloween Costumes LightOJ - 1422 題意:有n個萬聖節晚會,晚會按順序參加,每個晚會都要求穿要求的衣服。衣服上面可以套衣服。問穿衣服的最少次數 分析:解釋一下樣例,1 2 1 2(4個晚會

原创 自適應辛普森法求積分

Bridge UVALive - 3485 要計算∫baf(x)dx 將之放到二維座標系中,就相當於求面積。 三點辛普森公式:f(a)+4f(min(a,b))+f(b)6 #include <iostream> #incl

原创 android編譯問題解決記錄

在虛擬機中編譯android7 1.try ‘jack-diagnose’ or see Jack server log 參考 原因:jack不支持多用戶同時編譯,所以經常出現jack server報錯的現象。主機中的port和虛

原创 ubuntu刪除內核

參考https://blog.csdn.net/bless_forever/article/details/79630315 1.查看Linux中安裝了哪些內核: 使用 dpkg --get-selections | grep l

原创 打牌第二天之完全揹包

揹包九講邊看邊打 打牌小技巧 求揹包體積恰好裝滿,或者揹包不用裝滿的最大價值,這兩種只是在dp數組>的初始化中有點不同 體積恰好裝滿,dp[0]=0,其他dp[i]都爲-inf.可以這樣想,只有體積爲0的時候才允許揹

原创 HDU 6082 度度熊與邪惡大魔王(完全揹包)

分析:n很大,但是怪物的防禦力只到10.枚舉一下防禦力,然後對技能完全揹包 dp[i][j]:防禦力爲j,生命力爲i的最少晶石數 這個題主要是細節要注意感覺 #include <iostream> #include <cstri

原创 Zuma HDU - 6212 (區間dp)

題意:祖瑪遊戲。給一串01序列。每大於等於三個相同的連在一起的話,就可以消去。往序列中間加一個0或者1稱爲一個操作,問要將序列全部消掉,最少需要多少個操作 分析:開始的想法是 dp[i][j]:下標從i到j全部消去最少需要的操

原创 AC自動機+矩陣快速冪

POJ 2778 DNA序列 題意:給n條病毒DNA序列,然後問所有長度爲L的DNA序列中,不包含病毒的序列有多少條。 分析:首先將病毒的DNA序列建AC自動機,然後建fail指針。將每個點編號作爲狀態,然後可以得每個點走一步後的

原创 (不想說第幾天了==)混合揹包

混合揹包問題 將01揹包,完全揹包,多重揹包混合起來,也就是有的物品可以取一次,或者可以取無限次,或者取得次數有一個上限。 for(int i=1;i<=n;i++) { if(第i件物品屬於01揹包) Z

原创 斜率dp 入入門

A - Print Article HDU - 3507 題意:一臺老舊的打字機,每打出一個單詞就會有一個ci.輸出一行的費用爲∑(ci)+M(M是一個常數) 現在要輸出一篇文章,問費用最少爲多少。 分析:dp[i]:前i個單詞

原创 Cross the Wall UVALive - 5097 (貪心+斜率dp)

前幾天做的一道題。這個題感覺還是蠻好的,之後的要注意這方面的貪心 題意:有n個人要通過牆,每個人有高度h和寬度w,我們最多可以建k個門。第i個人要通過牆的條件是門的高H>hi,門的寬W>wi。建一個高H,寬W的門,代價是W*H。問

原创 打牌第三天之多重揹包

多重揹包問題 題目:有n種物品和一個容量爲v的揹包。第i種物品最多有n[i]件可以取,每件體積是c[i],價值是w[i]。求解將哪些物品裝進揹包可使這些物品的體積總和不超過揹包的容量,且價值最大。 解法 1.和完全揹包不同的是

原创 Palindrome

說到 Palindrome ,wo一般會想到構造,馬拉車,dp. 這裏我們看一下和dp有關的Palindrome 1.判斷一個字符串是否是迴文串 dp[i][j]:下標從i到j是否爲迴文串 狀態轉移方程爲: if(s[i]=