模擬測試20191029

$T1:數列$

因此這題和數列沒什麼關係數組

顯然對於每一個數答案是個單谷優化

直接三分,複雜度$O(nloga)$spa

然而這題其實不用三分,顯然答案只在x的最小正整數解和最大負整數解時獲得排序

$O(1)$可求,複雜度$O(n)$it

 

$T2:數對$

考場上在(數據刪除)打出"(數據刪除)"後想到的解法io

因爲這題最終構建出來的序列$a$和$b$都不單調,咱們不容易構造一個正確的排序方法保證拓撲序方法

那麼咱們能夠換一個思路,再也不一個一個加入新的數,而是把數插入已有序列im

那麼咱們把數對按照$b$排序數據

設目前數組爲$(10,2) (1,3) (2,5) (10,11)$ ($(a,b)$表示題中的$a,b$)co

咱們倒着掃排序後的數組,假設咱們當前在處理$(10,2)$

因爲$10$太大,$(10,2)$沒法放在$(1,3),(2,5)$以前,只能放在$(10,11)$以前

然而直接用$(10,11)$轉移$(10,2)$會致使丟失了$(1,3)(2,5)$兩個數對,他們顯然是能夠作貢獻的

可是咱們發現因爲咱們按照$b$排序,使得當前處理數對的$b$必定是最小的

因此跳過部分的貢獻即爲跳過部分全部$a<=b_{i}$的點對的權值和

即$dp_{i}$=$\max\limits _{b_{j}\geq a_{i}} (dp_{j}+\sum\limits _{k=i+1,a_{k}<=b_{i}}^{j-1}w_{k})$

把dp變成後綴max則有

$dp_{i}$=$ dp_{j}+\sum\limits _{k=i+1,a_{k}<=b_{i}}^{j-1}w_{k}$ $j$爲第一個$b_{j}\geq a_{i}$的點

主席樹優化一下

 

$T3:最小距離$

以全部特殊點爲起點跑最短路,同時維護最短路的起點是誰

而後枚舉全部邊,若是兩端點是從不一樣特殊點到達,則更新答案

相關文章
相關標籤/搜索