原创 周練

CF701E 思路:這是第一次對於貢獻這兩個字有了一定的理解。 易得:每條邊經過的次數=min(這條邊左邊學校個數,這條邊右邊需要的學校個數),爲了能夠達到最大,就儘量能走的邊都走一遍,也就是把所有邊對於答案的貢獻加起來;此處看來

原创 hdu2767(利用tarjan將圖變成強連通圖)

題目 題意:求解將一個圖變成強連通圖需要添加的最小邊數 思路:首先用tarjan將圖縮點變成DAG,既然是強連通圖,那麼每個點都應該能進也能出,所以統計一下出度,入度爲0的點的數量,要求邊數最少,所以取max(innum,outn

原创 區間dp(Pangu and Stones)

題意:給n堆石頭,標號爲1到n,每堆石頭有一定的個數,每次可以選擇[L,R]中任意一個數那麼多堆來合併,每次合併的花費是合併後石頭的的總個數,求花費的最小值 思路:dp[i][j][p]代表把區間[i,j]的石頭分成p堆的最小花費

原创 hdu4638 Group(莫隊)

Problem Description There are n men ,every man has an ID(1…n).their ID is unique. Whose ID is i and i-1 are friends

原创 排位賽補題

我爆零了,佛了,看來方法不太對T_T;做題太容易先入爲主了,一錯到底。。。。 1.light oj 1077:How Many Points? (數論gcd) 題意:給定A(x1,y1),B(x2,y2)兩個點,求線段AB上有多少

原创 hdu4348 To the moon(可持久化線段樹)

Background To The Moon is a independent game released in November 2011, it is a role-playing adventure game powered

原创 最大流(模板EK,dinic,isap)+最小費用最大流(spfa)

模板題 這三種算法基於尋找增廣路徑來求解最大流,當一個網絡圖中不存在增廣路徑時我們就得到了最大流; 1.EK: //直接使用bfs找最近的增廣路徑,每找到一條就更新殘餘網絡,然後繼續找,直到不存在爲止,這個真好懂^ V ^ #in

原创 周練補題

D:D - Knight Tournament CodeForces - 356A 題意:編號1到n的人打架,給出m個區間, 編號位於這個區間中的人打架,再給出這個區間中最後勝利的人,對於每個人,求打敗他們的人的編號。 思路一:線

原创 八數碼問題(A*搜索+剪枝)

題目 新技能! 康託展開:個人感覺就是全排列中用哈希,把狀態壓縮了,例如1~9的全排列,如果直接保存,那麼最大就是987654321,如果需要標記這個狀態的話,數組是不可行的,採用康託展開就可將範圍壓縮到1 ~ 9!,這樣就可以開

原创 hdu1828,掃描線求矩形邊長

這道題利用掃描線求取矩形的周長,不包括重疊部分。可以掃兩次,豎着掃一次,橫着掃一次,掃兩次這個我寫出bug來了,現在也不知道bug在哪兒QAQ,反手一想算了還是去寫掃一次的。 畫圖模擬一下掃描線掃的過程會發現我們橫着的周長就是每

原创 Super Mario(主席樹+權值線段樹)

題目:添加鏈接描述 思路:先把數據離散化,按照權值建立主席樹,然後對於一個高度h,我們找的答案是區間中不大於h的數,那麼我們求取了mid後,如果h大於mid,那麼左子樹的數都小於h所以要統計左子樹的上的數量,然後繼續遞歸求解右子樹

原创 CF1139D step to one(數論+概率dp)

原題地址 題意:給一個數m和一個空數組a,每次可以選1~m中任意一個數加入到a中,求最後a數組中所有數的gcd爲1時的期望長度; 令dp[i] 表示當前數組的gcd爲i時,還期望添加dp[i]個數使得所有數的gcd爲1;那麼初始條

原创 BZOJ4971:記憶中的揹包

題目 玄學構造題,01揹包的逆向構造。首先可以明確模數是沒用的, 我們一定可以構造出方案數小於模數的一組數據(因爲只有揹包體積w已知的條件下,可以構造出方案數爲任意值的物品數據)。這玩意兒構造的自由度太高,還有就是數不止一個,且互

原创 hdu 6599(迴文樹+hash)

題目 思路:先建好一棵迴文樹,然後問題就是如何快速判斷一個結點代表的迴文串是不是題目要求的迴文串,暴力判斷就是順着後綴鏈接找,然後就T了 emmm。而實際上在插入一個結點時,這個代表的迴文串我們可以通過它的長度和現在插入到第幾個字

原创 poj3228(並查集)

題目一開始題都沒讀懂,“maximum adjacent distance”把我給整懵了。。。 題意:給一個圖,圖中一些點有黃金,一些點有放黃金的倉庫,但有容量限制,問把所有黃金都能裝進倉庫的路徑中權值最大的那條路是多少。 思路: