http://acm.hdu.edu.cn/showproblem.php?pid=2665

以前只知道用歸并樹做,查詢時間復(fù)雜度要 m * ( log n)^3, 昨天學(xué)了一個劃分樹,查詢只要m * logn 。其實這題的正解就是使用劃分樹來做。劃分樹跟歸并樹剛好是相反的操作,劃分樹查詢用于查詢[ l , r ]內(nèi)第k大的數(shù), 歸并樹用于查詢某個數(shù)在[ l , r ]內(nèi)排第幾。

劃分樹的資料比較少,可以參看 小hh 大牛的blog http://www.notonlysuccess.com/?p=142, 或者下面這個blog http://blog.163.com/tonyshaw@yeah/blog/static/142021718201035102322338/

hdu 2665