傳送門
t2防ak題?
其實也不是很難(考試時sb了)。
直接變形一下求出區間長度在[l2
,r2]
[l2,r2]
[l2,r2
]之間,中位數≤l1
−1
\le l1-1
≤l1−
1的區間數,和區間長度在[l2
,r2]
[l2,r2]
[l2,r2
]之間,中位數≤r1
\le r1
≤r1的區間數就行了。
繼續變變形,乙個區間的中位數如果≤
k\le k
≤k。那麼顯然有:區間中≤
k\le k
≤k的數的個數≤
\leq
≤區間中》
k>k
>
k的數的個數。
我們記sma
ll
ismall_i
smalli
表示1
11$i$中比$k$小的數的個數,$big_i$表示$1$
i
ii中比k
kk大的數的個數。
那麼就有:sma
llr−
smal
l−1≤
bigr
−big
l−
1small_r-smal_\leq big_r-big_
smallr
−sm
all−
1≤b
igr
−big
l−1
移項後發現:sma
llr−
bigr
≤sma
lll−
1−bi
gl−1
small_r-big_r\leq small_-big_
smallr
−bi
gr≤
smal
ll−1
−bi
gl−1
然後就可以主席樹做了。
**
NOIP模擬 字串(字尾陣列)
給定兩個字串 s1 和 s2 兩個字串都由 26 個小寫字母中的部分字母構成。現在需要統計 s 2 在 s 1 中出現了的次數。對於 s1 中的每個位置 i 設 st rlen s2 m,若 j 1m s1 i j 1 s 2 j k 最外層中括號為布林表示式 則認為 s2 在 s1 的 i 處出現...
NOIP模擬 字胡串(單調棧)
只剩5分鐘的時候打了乙個三重迴圈。完全沒想到固定左端點減少1個n。被diss了一波。對於乙個區間,如果他合法,那麼一定是有乙個非最大數在二進位制下與最大數有不同的地方,所以對於乙個數,利用單調棧記錄他作為最大數的區間 左右第乙個至少有一位與他不同的地方,利用容斥原理計算一下統計答案即可,複雜度 然後...
NOIP模擬 修路
這題第一眼看上去有些懵逼,還以為是dp。第二眼,哦,這麼裸的最小生成樹,2分鐘打完,拍都沒對,自信100分。最終100分。每條邊的權值減去連個節點的權值,所有的邊做一次最小生成樹就好了。include include include include include define fo i,a,b f...