原创 【二分+bellmanford判負環】 uva 11090 Going in Cycle!!!

題目大意:給出一張有向圖,求出平均值最小的環   思路一:第一種算法就是dfs找環,每找到一個環,求出其平均值。然而別看n<50,想造出這樣的數據也是分分鐘的事情。   思路二:bellmanford算法就是爲帶權的圖而生的。bellma

原创 【滑動窗口】uva 1330 City Game

題意:有一個矩陣,上面有F和R,求最大由F組成的子矩陣的大小 N <= 1000   思路一:DP,4維,不可不可。   思路二:“二維滑動窗口”。自底向上,自左向右掃描,讓len(i,j)表示往下到底F最長的長度,left(i,j),r

原创 【帶有估值函數的DP】 uva 10859 Placing Lampposts

題目大意:給一顆無向圖樹,每個節點都可以放燈,燈能點亮相鄰的邊,求怎麼樣才能把所有邊都點亮。 如果有多種方案:給出一個能夠讓有兩盞燈同時找到路情況最多的方案。   解析: 如果去掉後面的條件,就成爲了一個很簡單的樹上dp。如何處理同時兩盞

原创 【縮點+tarjan(scc)】 uva 11324

題目大意: 在一張有向圖中,我們把有這樣性質的點的集合S稱之爲Clique(派系?) 對於任意在S中的兩個點x,y   存在x->y的路徑或(包含)存在y->x的路徑   思路:首先要明白,如果存在強連通分量,那麼在這個強連通分量裏的所有

原创 【最短路徑樹優化】 uva 1416 Warface And Logistics

題目大意: 給出一張無向圖,求刪除一條邊後,對於所有的點對(i,j)使得 c = Sum(d[i][j)]最大的值。   分析: 如果僅僅是枚舉刪除某一條邊,是非常差的做法,我們要得到以下幾點信息: 首先我們要明確,如果刪除這麼一條邊——

原创 【數學】 一些的數學題

Uva 11401 Counting triangles大意: 給一個n,問從邊長爲1,2,3...........n 中能夠組成幾個三角形。分析:1.n<=3 肯定不行          2.換個思路,令f(x)表示從1.....x中必

原创 ECNU 2018 程序能力實訓第一次機考(下午場)

https://acm.ecnu.edu.cn/contest/64/A.閃卡銷售 公司有 n 種類型的閃卡要出售,閃卡類型編號爲 1,2,3,…,n,第 i 種類型的閃卡數量爲 ai。現有多個收購商給出的 m 條關於閃卡的報價信息 (p

原创 【指針1】 指針減法 數組索引與數組指針 指針的強制轉換

一、同類型指針可以做減法:比如:#include <iostream> using namespace std; int arr[1230]; int main() { int *a = &arr[4]; int *b = (arr

原创 【線段樹(遞歸版)】—— 點修改 區間覆蓋 區間修改

線段樹接觸了也很久,但總是沒一個安定的寫法,各種花裏呼哨的都寫過,老實的時候連指針版的都寫過。但款式那麼多並沒有用,到時候用起來反而坑坑窪窪的,還不如定一個標準模式。雖然是非遞歸的線段樹代碼簡單而高效,但是萬事慢慢來,從最基礎簡單的在博客

原创 【ZOJ 2112】 線段樹套平衡樹

題目大意: 給定一個數列,定義兩種操作:1、修改第n個數的值2、求[l,r]區間內第k大的值。方法:線段樹維護區間,treap樹維護第k大(splay當然也可以)樹套樹第一題。。沒想到真的是每個線段樹上的節點建一棵平衡樹。。。。。然後修改

原创 【ECNU OJ】tag = shortest paths (上)

Problem #3323 羅塞塔石碑EOJ 3323 大意:字母可以相互表示,有向圖連接,詢問一串字符是否能夠被領一串字符表示解法:裸floyd Problem #3200 SixDegree of Cowvin BaconEOJ 32

原创 AC自動機 —— 多模式匹配 模板、個人理解及詳細註釋

解決單個字符串匹配的方法是KMP算法得益於其next數組,整個算法時間複雜度被顯著壓縮。在O(n+m)的時間內即可以算出模式匹配。 AC自動機是一個支持多模式匹配的算法。也就是給出模式串A1,A2,A3……An,以及一個字符集S在模式串長

原创 【poj 2352】 Stars 及淺談樹狀數組

樹狀數組:       1、 一個可以動態維護前綴和的一個數據結構,支持求和和單點修改。在拓展情況下可以支持區間修改。       2、 優點:代碼短,O(lgn)的開銷lowbit是非常有用的 x&(-x) 利用補碼的性質得出最低位的數

原创 【ECNU OJ 1888】陸行鳥挖寶 最短路徑

Problem #1888你坐在陸行鳥上進行一個挖寶任務,陸行鳥有三種移動方式,假定移動前的座標爲 X,則:1. 移動到 2X 的地方。2. 移動到 X−1 的地方。3. 移動到 X+1 的地方。爲了儘快挖到寶物而不至於被別人先挖到,你需

原创 【POJ 2985】 The k-th Largest Group Treap+並查集

Treap:佛系平衡樹,愛轉不轉,靠隨機,靠隨緣,只有單旋轉。比普通的二叉樹多一個priority值,保存結點的權重用隨機數生成。如果一個節點的兒子比他的父親優先級大【或小】,就執行一次單選轉。期望平均O(nlgn) 可以說是很隨緣了。刪