原创 POJ 3321 Apple Tree (DFS + 樹狀數組)

題意: 一棵蘋果樹有N個分叉,編號1---N(根的編號爲1),每個分叉只能有一顆蘋果或者沒有蘋果。 現在有兩種操作: 1.某個分叉上的蘋果從有變無或者從無邊有。 2.需要統計以某個分叉爲根節點時,它的子樹上(包括該分叉)共有多少蘋果。

原创 POJ 3481 (SBT基礎操作題)

題目有三個操作,插入一個優先級爲p的,名字爲k的人;取出優先級最小的人,輸出名字; 取出優先級最大的人,輸出名字。 可以再sbt的域中加一個值存儲名字,也可以直接map搞定....................這裏只用了insert,g

原创 組隊練習賽(Regionals 2012, North America - East Central NA)

A.Babs' Box Boutique 給定n個盒子,每個盒子都有長寬高(任意兩個盒子長寬高不完全相同),現在選盒子的任意兩面,要求x1 <= x2 && y1 <= y2,問最多能選多少盒子滿足這需求。 直接dfs暴搞........

原创 POJ 2155 Matrix (二維樹狀數組)

題意: 提供一個N*N 的矩陣,其中每一個格子中的數不是1 就是0,初始時每一個格子的值爲0,我們可以修改這個矩陣中的數字,每次給出矩陣的左上角座標(x1,y1),以及右下角的座標(x2, y2),並且將矩陣中的數字全部取反(原來是1 現

原创 HDU 4022 Bombing (map + multiset)

題意: 在x,y座標範圍爲10 ^ -9 ~~ 10 ^ 9的座標軸之中,有 10W個點(注意有些點可能在同一座標上),然後有10W個詢問,處理詢問按照輸入順序處理,對於每個詢問a,b    a == 0 代表對 x == b軸處理;

原创 HDU 3681 Prison Break (二分答案+狀壓DP+bfs預處理)

題意: 機器人從F出發,走到G可以充滿電,走到Y關掉開關,D不能走進,要求把所有開關關掉,且機器人存儲的電量最少,並求出該最小電量。 分析: 把F,G,Y三種類型的點找出來,進行討論,首先bfs處理出來各個點之間的最短路。現在題目就變成

原创 POJ 2892 Tunnel Warfare (SBT + stack)

題意:給定了初始的狀態:有n個村莊連成一條直線,現在有三種操作: 1.摧毀一個村莊 2.詢問某個村莊,輸出與該村莊相連的村莊數量(包括自己) 3.修復被摧毀的村莊,優先修復最近被摧毀的.............. 分析:用SBT做的話,

原创 130827解題報告

A,B,J三題較爲水,算是一眼題了 C. Pen Counts 題意:用1--n之間的數組成符合題意的三角形(每個數只能用一次),求三角形的個數。 經過統計,如果三條邊的值完全不同,三角形個數+2,否則三角形個數+1,然後用過的三條邊,

原创 POJ 2761 Feed the dogs (SBT+離線處理詢問)

給定n個數,m次詢問,n個數爲1--n的排列,每次詢問給出了一個區間和k,詢問在區間內爲第k小的數。 區間內第k小(大)的數可以用SBT來解決,現在m次詢問則是動態的,可以用離線處理:將詢問區間排序,每次需要插入則插入,需要刪除則刪除,

原创 poj 3323 Matrix Power Series (矩陣乘法 非遞歸形式)

爲了搞自動機+矩陣的題目,特來學習矩陣快速冪..........非遞歸形式的求Sum(A+A^2+...+A^k)不是很懂,繼續弄懂................不過代碼簡潔明瞭很多,亮神很給力 #include <iostream

原创 HDU 4417 Super Mario (樹狀數組+離線處理)(劃分樹+二分答案)

題意: 給定1--n區間,有q個詢問,詢問l,r,k表示區間[l,r]小於等於k的數的個數 思路: 可以用劃分樹(求區間第k大值)變形一下,來求小於等於k的個數,但是此題直接離線處理詢問高效的多。 首先將1--n區間的值記錄位置,從小到大

原创 POJ 1195 Mobile phones (二維樹狀數組或線段樹)

偶然發現這題還沒A掉............速速解決了............. 樹狀數組和線段樹比較下,線段樹是在是太冗餘了,以後能用樹狀數組還是儘量用......... #include <iostream> #include <a

原创 HDU 2825 Wireless Password(AC自動機+狀壓DP)

題意:有一個長爲n(n<= 25) 的字符串,它至少由k個magic word 組成,現在給出m個magic word,求出這個字符串組成的可能種數。 構造AC自動機進行搜索,dp【i】【j】【k】表示字符串長度爲i,匹配字典樹上的第j個

原创 HDU 3478 Play with Chain (Splay樹)

這種高級數據結構太難搞了.........現在還是先照着別人的代碼敲,做模板..........慢慢花時間來弄懂 #include <iostream> #include <algorithm> #include <cmath> #in

原创 POJ 2104 & HDU 2665 K-th Number (劃分樹)

題意不用說了,就是詢問x次,指定區間的第k小的值.................... 表示太弱了.......看了許久還是不太理解劃分樹內涵,先把偷來的模板留着 #include <iostream> #include <algor