原创 【狀壓DP】【cofun1368】炮兵陣地

【cofun1368】炮兵陣地 Description 司令部的將軍們打算在NM的網格地圖上部署他們的炮兵部隊。一個NM的地圖由N行M列組成,地圖的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下圖。在每一

原创 【狀壓DP】【cofun1760】angrybirds

【cofun1760】angrybirds Description 分析: 1 <= n <= 18 考慮狀壓DP ①顯然函數種類<=n^2,用數組g[i][j]表示打i,j這兩隻小豬的函

原创 【狀壓DP+高精】【cofun1370】走道鋪磚問題

【cofun1370】走道鋪磚問題 Description 有一個專門爲裝修設計方案的設計師。在某一天,他接到了一個項目,爲一棟正在修建的大樓設計走道的地板鋪設方案。此項目的委託人事先便進行了說明:地板磚只有1×2一種規格,而整

原创 【狀壓DP】【cofun1373】中國象棋(cchess)

【cofun1373】中國象棋(cchess) Description 在N行M列的棋盤上,放若干個炮(可以是0個),使得沒有任何一個炮可以攻擊另一個炮。 請問有多少种放置方法,中國象棋中炮的行走方式大家應該很清楚吧. Inpu

原创 【狀壓DP】【cofun1372】售貨員難題

【cofun1372】售貨員難題 Description 某鄉有n個村莊(1<=n<=14),有一個售貨員,他要到各個村莊去售貨,各村莊之間的路程s(0< s<1000)是已知的,且A村到B村與B村到A村的路程大多不同。爲了提高

原创 【狀壓DP】【cofun1374】trip

【cofun1374】trip 分析: 把寶藏當做需經過的點,轉爲TSP問題,寶藏數<= 13,考慮狀壓DP。 ①bfs出寶藏,起點,終點之間的距離。 ②把起點,寶藏,終點壓進二進制(0:該寶藏已取到/ 1:該寶藏未取到

原创 線段樹

線段樹 針對:動態區間問題。對於數組A,有如下操作: Update(x, v):把A[x]修改爲v。 Add(L, R, v):把A[L], A[L + 1], …,A[R]的值全部加v。 Set(L, R, v):把A[L],

原创 【狀壓DP】【cofun1623】壽司晚宴

【cofun1623】壽司晚宴 Sample Input 輸入樣例1 3 10000 輸入樣例2 4 10000 輸入樣例3 100 100000000 Sample Output 樣例輸出1 9 樣例輸出2 21

原创 【逆序對】【cofun1917】奇數碼問題

【cofun1917】奇數碼問題 Description 你一定玩過八數碼遊戲,它實際上是在一個33的網格中進行的,1個空格和1~8這8個數字恰好不重不漏地分佈在這33的網格中。 例如: 5 2 8 1 3 _ 4 6 7 在

原创 RMQ問題(ST表解法)

RMQ問題(ST表解法) 針對:範圍最值問題。對於數組A[1…n],有操作如下: RMQ(L, R):A中第L個數到第R個數中的最小值(最大值類比)。 d[i][j]:從i開始,長度爲2j 的一段元素的最小值。可推→ d[i][j

原创 逆序對的兩種算法【樹狀數組 / 歸併排序】

對於數組A[1…n],求逆序對對數。 可根據數據範圍離散化。 以下算法時間複雜度:O(n * log n)。 逆序對對數最大爲n*(n-1)/2,結果經常要用long long保存。 樹狀數組算法 逐一讀入a[i]。 利用樹狀數組

原创 樹狀數組(二叉索引樹)

樹狀數組(二叉索引樹BIT) 針對動態連續和查詢問題。 對於數組{A1,A2,A3,…An},有操作如下: Add(x, d):讓Ax增加d;Query(L, R):計算A中第L個數到第R個數的和(S[R] - S[L - 1]

原创 【狀壓DP】【cofun1040】混亂奶牛

【cofun1040】混亂奶牛 Description 約翰家有N頭奶牛,第i頭奶牛的編號是Si,每頭奶牛的編號都是唯一的。這些奶牛最近在鬧脾氣,爲表達不滿的情緒,她們在擠奶的時候一定要排成混亂的隊伍。在一隻混亂的隊伍中,相鄰奶牛的編號

原创 圖的概念與存儲

參考資料: 本文不做商用,只是爲了更好的複習,如果有侵權請指出,十分抱歉。 定義&術語 表示 鄰接矩陣:適合頂點數規模小、邊稠密的簡單圖 無權圖:不存在邊(u,v) → a[u][v] = 0; 存在邊(u,v

原创 【總結】狀壓DP

對於狀壓DP的理解和總結 一般來說,狀壓是把多種狀態(方案,集合等等)hash進二進制數中,0表示該狀態不存在,1表示該狀態存在(也有用三進制等等,如算路徑一點可經過2次),所以首先應掌握位運算。應注意位運算的優先級比較低,如減法比左移